Die "52" steht für "Schaltfläche ja+nein und bitte ein Ausrufezeiche-Icon". Kann man das aus einer "52" herauslesen? Nein. Deshalb sollte man lieber die vorgefertigten Werte "MB_YESNO" und "MB_ICONEXCLAMATION" dafür verwenden.
Vielen Dank!
Sieht auf den ersten Blick wirklich etwas besser aus. Außerdem braucht es nicht viel Fantasie um zu erahnen, dass eine Internetsuche nach "MB_YESNO", "MB_ICONEXCLAMATION" bzw. "MB_OK" vermutlich erfolgreicher / effizienter wäre als nach "52" und "6", womit sich das Problem wohl von selbst gelöst hätte.
Bitte nie so etwas
if Frm_Form2.Beenden = False then
nutzen, sondern immer
if not(Frm_Form2.Beenden) then
Ich vermute eine Modifizierung ist keine so gute Idee.
statt Frn_Form2.Beenden
immer Self.Beenden
Alles klar, danke
Ich vermute
if Frm_Form2.Beenden = False then
läuft unter der Rubrik "von hinten durch die Brust und durchs Auge ins Herz", also unnötig kompliziert. Liest sich jetzt verständlicher. Wobei das mit "self" im allerersten Moment etwas ungewohnt war. Klingt aber auch sinnvoll.
Ich würde das allerdings nicht über eine zweite Form lösen, die dann eifach über die erste Form drübergeblendet wird. Pack die Controls auf verschiedene Seiten eines TPageControl. Wenn du willst, kann man die Tab-Reiter mit
TabVisible:=false
unsichtbar machen. Umschalten zwischen den Tabs erfolgt dann mit
PageControl.ActivePage:=...
Du hast dann aber programmtechnisch immer noch ein Form, das ganz normal beendet werden kann, sparst dir das Gehampele mit WMSysCommand und die Circular
Unit Reference, dass Form1 Form2 kennen muss und umgekehrt.
Danke, das ist natürlich auch eine Möglichkeit die ich erstmal komplett nicht auf dem Schirm hatte. Allerdings funktioniert es ja grundsätzlich erstmal so, wie ich es realisiert habe. Mich würde nur interessieren, was da genau dahinter steckt