Einzelnen Beitrag anzeigen

ndy

Registriert seit: 18. Mär 2015
Ort: Dresden
8 Beiträge
 
Delphi XE2 Professional
 
#8

AW: Mehrere Formulare schließen (mit Sicherheitsfrage)

  Alt 19. Mär 2015, 10:07
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
  Mit Zitat antworten Zitat