![]() |
Auf Modale Fenster prüfen
Ich habe ein sehr umfangreiches Project mit sehr vielen Forms, die meissten davon werden Modal von der Hauptform geöffnet. Kann man in der Hauptform irgendwie prüfen ob gerade ein Modales Fenster geöffnet ist ?
Ich habe es mit
Delphi-Quellcode:
probiert ... aber Enabled wird wohl leider nicht auf False gestellt wenn ein Modales Fenster geöffnet wird :(
if not <MainForm>.Enabled then ...
|
Re: Auf Modale Fenster prüfen
wenn ein modales Fenster geöffnet ist, ist das Mainform solange blockiert, bis das modale Form wieder geschlossen wird.
Auch alle functions und procedures des mainform machen solange nix mehr. wenn du parallel zu dem modalen Form was machen willst, wirst du um Threads nicht drumrum kommen... |
Re: Auf Modale Fenster prüfen
Also so ganz kann das nicht stimmen Auf Eigene Messages reagiert meine Mainform Klasse noch und da liegt auch das Problem er soll die Message nur verarbeiten wenn kein Modales Fenster gerade geöffnet ist ...
|
Re: Auf Modale Fenster prüfen
Ok habs jetzt so gelöst ...
Delphi-Quellcode:
function TfrmMain.IsAnyClientWindowVisible: boolean;
var i:Integer; begin Result := False; for i := 0 to Screen.FormCount - 1 do if Handle <> Screen.Forms[i].Handle then if IsWindowVisible(Screen.Forms[i].Handle) then begin Result := True; Break; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz