Einzelnen Beitrag anzeigen

Perlsau
(Gast)

n/a Beiträge
 
#34

AW: Wie ShowModal Form aus dem HauptForm schließen?

  Alt 22. Mai 2015, 22:26
Was ist der Unterschied zwischen Frame und nem Form, das nicht modal aufgerufen wird?
Ein Frame kannst du nur auf einem Form anzeigen. Du erstellst ein Frame (Neu -> Frame), machst dein Zeugs drauf (Buttons. Labels etc.) und nimmst die Unit des Frames in die Uses-Klauses deiner Mainform auf. In selbiger erstellst du eine Variable vom Typ des Frames und erzeugst eine Instanz des Frames (Create), wenn du ihn benötigst oder auch gleich beim Programmstart. Im ersten Fall zerstörst du den Frame, wenn du ihn nicht mehr benötigst (Free), im zweiten Fall in OnDestroy deines Hauptfensters. Aber bevor ich das lang und breit erkläre, ist das schneller programmiert.

Übrigens, wie jede Komponente hat TForm auch die Eigenschaft Enabled. Das kann man auf False setzten, dann reagiert das Fenster aber gar nicht mehr. Eine bessere Möglich wäre aber einfach auf das Formular ein TPanel zu setzten und das False zu stellen. Die Komponenten legst du auf das Panel. Ist Panel nicht Enabled, reagiert keine Komponente drauf.
Das ist natürlich die allereinfachste Idee und hat somit alle Aussichten zum Favoriten.
Um die Menüs, falls vorhanden, muß er sich dann extra kümmern. Wenn er keine ActionList hat, beschränkt sich das darauf, die Hauptmenü-Einträge zu disablen.
Angehängte Dateien
Dateityp: zip ModalTest.zip (1,55 MB, 4x aufgerufen)

Geändert von Perlsau (22. Mai 2015 um 22:32 Uhr)
  Mit Zitat antworten Zitat