Zitat von
CCRDude:
@hsg: Hmmm... also der Fontname der Form selber ist bei mir immer drin (zumindest wo ich gerade reingeschaut habe) - der von Controls natürlich nicht, aber da kommt ja ParentFont zur Geltung, sprich da muss nicht zwingend etwas ersetzt werden?
(wobei deine Methode natürlich eleganter ist, das geb ich zu
)
@shmia:
oh je, an der .dpr rumpfuschen, das mag die
IDE aber eigentlich gar nicht
Font.Size ist nicht enthalten (könnte man aber wohl über Font.Height setzen), okay, Zeichensatz mag wohl noch gehen, aber es gibt genug Properties die bei Default-Werten nicht in der
DFM stehen und dann sitzt du mit deiner Lösung auf dem Schlauch
shmia will ja nicht unbedingt an der .dpr rumpfuschen, obwohl auch das geht. Man muss nur beachten, dass die Applikation am Schluss ein Hauptfenster hat, mit dem die
VCL arbeiten kann (z.B. zum Bestimmen wie lange die MessagePump am Leben erhalten werden muss).
Alle weiteren Fenster sollte man sowieso nicht über den normalen Automatismus öffnen lassen, sondern es explizit an den geeigneten Stellen im Source-Code selber erledigen (und dort kann man dann anfangen zu streiten, ob man
Application.CreateForm(TMyForm,myFrm)
oder
myForm := TMyForm.Create(self);
oder eben shmias Variante benutzt. Wobei diese Variante sich nur zur Laufzeit auswirkt. Braucht man das visuelle Feedback zur Designzeit (z.B. Anordnung von Controls bei Änderung der Schriftart und Größe) funktioniert die Form-Factory nicht.
Aber wie heisst es so schön: Alle Wege führen nach Rom (ich will aber nach Paris!
)