![]() |
AW: Initialisierung falsch !
Zitat:
Einen guten Punkt für die (nur einmal auszuführende) Initialisierung eines Forms zu finden ist manchmal nicht einfach. Ich habe dafür oft den OnPaint-Event des Forms verwendet. Die erste Zeile darin ist dann
Delphi-Quellcode:
Damit wird der Handler nur einmal aufgerufen.
OnPaint := nil;
|
AW: Initialisierung falsch !
... daran hatte ich auch schon gedacht und auch die Props alle durchgesehen.
OldCreateOrder ist false. Na ja, OnPaint kommt ja relativ oft. OnActivate m.W.n. nur wenn das Fenster den Focus bekommt. Man könnte auch OnShow nehmen - das wäre (hier) egal. Da ich früher zu oft auf die Nase gefallen bin, was zu initialisierende var's/Programmteile betrifft, hat sich bei mir eingebürgert: - Alle Units/Forms de-/intialisieren im jeweiligen Create/Destroy ihre eigenen Kamellen. - Jede Unit/Form hat für eine Fremd-Intitialisierung eine DoINIT/DoExit Prozedur, wo alles weitere wichtige zur Laufzeit übergeben wird. - Die MainForm lädt/erzeugt alles wichtige in OnActivate (die Forms sind dann mit Create durch...) und gibt dann an alle DoINITs weiter. Damit ist alles fertig eingerichtet und wenn die Form erscheint, ist alles passend da. Bei meinem Problem hier kam eben das OnActivate der Main VOR ( ! ) dem Create der Form LAV. Da fehlten dann ein paar elementare Zuweisungen, so dass es beim Programmstart wie Beenden dauernd mehrfach "geknallt" hat. |
AW: Initialisierung falsch !
Zitat:
In fast 30 Jahren hätte es aber genug Zeit gegeben, sich mal mit dem Debugger zu beschäftigen. IDE (Texteditor mit Highlighting), Compiler und Debugger in einer Anwendung, das war gerade der große Fortschritt, den uns Turbo Pascal und Delphi gebracht haben. |
AW: Initialisierung falsch !
Die goldene F1-Taste geht heute an ........ himitsu !
Asche auf mein Haupt - da hatte ich wohl nicht richtig hingeguckt, bzw. in der falschen Form nachgesehen. Im der alten Main ist visinle = true, in der neuen false (default ?!). Kann mich nicht erinnern, das mal bewusst geändert zu haben. Mal juxeshalber auf true gesetzt und bumms. Das dieses (für mich) eher unscheinbare Property die Reihenfolge derart beeinflusst, war mir bisher nicht bekannt. Man lernt nie aus .... Auf jeden Fall hat das hier an 2 Tagen ne Menge Ärger und Arbeit gemacht - vergessen werde ich das sicher nicht mehr ! (... der Debugger hätte mir wahrscheinlich vom Sinn her das gleiche gesagt wie mein LOG, aber auch nicht warum ...) |
AW: Initialisierung falsch !
Ja, früher war es mal defult True ... seit 'ner Weile (jahrzehnte) ist es nun Default false.
Genauso wie sich die Ausführung von OnCreate verschoben hat (jetzt im AfterCreate und früher schon im Create) ... beim Upgrade alter Projekte/Forms in neuen Delphi wird daher das neue OldCreateOrder auf True gesetzt (was aber per Default auf False steht). |
AW: Initialisierung falsch !
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Anhang 55318 Eben bereits beim Erstellen, weil die Form Visible direkt im FormStatus hat. Hättest du das gepostet, hätte es dir direkt jemand sagen können. |
AW: Initialisierung falsch !
Hätte ich das gewusst, was visible da im Detail alles macht, hätte es diesen Fred gar nicht gegeben.
Ich war bisher der Meinung, das beeinflusst nur die Anzeige selbst. ... nun bin ich ja wieder etwas schlauer. |
AW: Initialisierung falsch !
Zitat:
|
AW: Initialisierung falsch !
Zitat:
|
AW: Initialisierung falsch !
Zitat:
Fakt ist doch das es innerhalb der IDE definiert Eingestellt werden muß. Inwiefern hat es dann mit der IDE nichts zu tun. Wegen dieser Zwiespältigkeit arbeite ich lieber ohne soweit dies möglich ist. Ok! Bin raus Thema scheint ja erledigt zu sein. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz