Hallo,
ist es möglich die 2. Form unabhängig von der MainForm zu machen?
Also wenn ich MainForm Minimiere bleibt die 2. From sichtbar, usw..
Nur beim Schließen der MainForm soll die auch geschlossen werden.
Oder muss ich das alles über die Events machen?
Die 2. Form wird mit Show angezeigt (nicht showModal) und
hat SystemOnTop im FormStyle.
[gelöst] Zweite Form unabhängig von MainForm
[gelöst] Zweite Form unabhängig von MainForm
Zuletzt geändert von atroesch am Mi 6. Aug 2025, 22:29, insgesamt 1-mal geändert.
- fliegermichl
- Lazarusforum e. V.
- Beiträge: 1674
- Registriert: Do 9. Jun 2011, 09:42
- OS, Lazarus, FPC: Lazarus Fixes FPC Stable
- CPU-Target: 32/64Bit
- Wohnort: Echzell
Re: Zweite Form unabhängig von MainForm
Normalerweise werden alle Fenster der Anwendung minimiert, wenn das Hauptformular minimiert wird.
Du kannst aber in Form1.OnWindowStateChange folgenden Code eintragen.
Das hat bei mir funktioniert.
Du kannst aber in Form1.OnWindowStateChange folgenden Code eintragen.
Code: Alles auswählen
procedure TForm1.FormWindowStateChange(Sender: TObject);
begin
if WindowState = wsMinimized then form2.Show;
end;
Re: Zweite Form unabhängig von MainForm
Danke für den Code.
Also doch alles über Ereignisse machen.
Dachte es gebe vielleicht eine einfachere Möglichkeit.
Also doch alles über Ereignisse machen.
Dachte es gebe vielleicht eine einfachere Möglichkeit.
-
- Beiträge: 754
- Registriert: Do 27. Sep 2012, 00:07
- OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
- CPU-Target: x86_64-win64
- Wohnort: Hamburg
Re: Zweite Form unabhängig von MainForm
Bei so etwas erstelle ich einen versteckten Hauptform und die anderen Formulare rufen beim Schließen ein Ereignis, das in ein Unit liegt, wie z.B. Ein_Kind_Form_Wird_Geschlossen-Ereignis, welches auf einen Prozedur im Hauptform zeigt. Und in diesem Prozedur wird geprüft, ob Application außer Hauptform noch andere Formulare hat, wenn nicht, dann wird das Programm geschlossen(Application.Terminate).
Man muss aber achten, dass man bei den anderen Formularen OnClose-Ereignis als CloseAction:=caFree gibt. Sonst sind die geschlossen, aber lebendig und dein Programm läuft ewig ohne sichtbares Formular. Das ist ein guter Weg um Formulare von einander unabhängig zu machen.
Man muss aber achten, dass man bei den anderen Formularen OnClose-Ereignis als CloseAction:=caFree gibt. Sonst sind die geschlossen, aber lebendig und dein Programm läuft ewig ohne sichtbares Formular. Das ist ein guter Weg um Formulare von einander unabhängig zu machen.
Re: Zweite Form unabhängig von MainForm
auch eine gute Idee.
Ich gehe aber den anderen Weg.
Danke für die Antworten
Ich gehe aber den anderen Weg.
Danke für die Antworten
-
- Beiträge: 1154
- Registriert: Sa 12. Sep 2015, 12:10
- OS, Lazarus, FPC: Laz stable (2.2.6, 3.x)
- CPU-Target: Win 32/64, Linux64
- Wohnort: Wien