Hi rokli
Du verwendest
Showmodal offensichtlich nicht so, wie Delphi das vorsieht. Zumindest, wenn ich dich richtig verstanden habe, öffnest du Form2 wie folgt:
Form2.Showmodal
und erwartest dann, dass es Modal offen bleibt, bis du es schliesst. Wenn dem so wäre: das wäre falsch. Form2 mag zwar geöffnet werden, aber du hast eventuell keine Kontrolle darüber, wie lange es modal bleibt.
Zitat:
Irgend wann wechseln dann die Fenster und die MainForm ist auf dem Bildschirm das "obere" Fenster, und das modale Fenster liegt dadrunter
Das Embarcadero-Wicki enthält da ein
Beispiel zur Verwendung von Modalen Formularen.
In Form1 würdest du also schreiben:
Delphi-Quellcode:
Form2.Showmodal;
if Form2.ModalResult = mrOkay then
begin
// Modalresult hat hier den Wert, der beim Klick
// auf einen Button von Form2 festgelegt wurde.
// Ein OK-Button hätte zum Beispiel den
// Modalresult-Wert mrOK
// Hier kannst du z.B. Propertys
// von Form2 weiterverarbeiten
// oder sonst was tun
end;
Auch wenn du erst Bearbeitungen in Form2 durchführen willst: der obige Code wird unterbrochen, solange Form2 geöffnet ist und kehrt erst nach schliessen von Form2 zurück.
Gruss
Delbor