Controls-Puzzle
-
Hallo,
hab echt lange überlegt, aber komme nicht auf (...)
void myFontSet() { register int i,j; for(i=0; i<frmMain->ControlCount; i++) { if (frmMain->Controls[i]->ClassNameIs("TPanel")) { for(j=0; j<((TPanel*)frmMain->Controls[i])->ControlCount; j++) { if (((TPanel*)frmMain->Controls[i])->Controls[j]->ClassNameIs("TEdit")) { (...)->Font->Name = myFont; } } } } }
Vielleicht gibts aber auch eine viel einfachere Lösung?
Danke für die Mitarbeit
danny
-
Ja, schönes Puzzle. Bin aber noch nicht drauf gekommen, wie man die Puzzleteile deiner Frage zusammensetzt.
-
Meine Frage:
Wie weise ich allen Edit-Feldern die sich auf Panels befinden
eine andere Schriftart zu?
-
Hi,
einfach alle Komonenten durchlaufen! Überprüfen ob Parent ein Panel ist und andere Schrift setzten!Alexander Sulfrian
-
Vielleicht so :
[cpp]
void myFontSet()
{
register int i,j;
for(i=0; i<frmMain->ControlCount; i++)
{
if (frmMain->Controls*->ClassNameIs("TPanel"))
{
for(j=0; j<((TPanel*)frmMain->Controls[i])->ControlCount; j++)
{
if (((TPanel*)frmMain->Controls[i])->Controls[j]->ClassNameIs("TEdit"))
{
[i]
TEdit* Edit = (TEdit*)((TPanel*)frmMain->Controls[i])->Controls[j];
Edit->Font->Name = myFont;
*
}
}
}
}
}
[/cpp]
Einfach ein Pointer des Typs TEdit auf das gefundene Control setzen, dann kannst Du' handeln und den Font verbiegen.
Viel Erfolg
Hans