![]() |
MessageDialog nach 5 Minuten schließen lassen
Hallo Leute,
wie kann ich einen geöffneten Messagedialog(messagedlg) nach 5 Minuten vom Programm schließen lassen und dann ein bestimmten Messageresult weitergeben. Also wenn der User nach 5 minuten keinen Button anklickt, dann soll das Programm selbstständig MessageResult = Yes ausführen. Gruß P.S. mit einem eigenen Formular währe es nicht das Problem... |
Re: MessageDialog nach 5 Minuten schließen lassen
Du könntest einen Thread starten, welcher nach 5 Minuten schaut ob der Dialog noch vorhanden ist und diesem dann eine entsprechende Meldung sendet.
|
Re: MessageDialog nach 5 Minuten schließen lassen
So ein kleines Beispiel wäre super. :-)
|
Re: MessageDialog nach 5 Minuten schließen lassen
Wie kann ich denn schauen, ob eine messagedlg offen ist?? Und wie übergeben ich diesem messagedlg einen messageresult?
Gruß |
Re: MessageDialog nach 5 Minuten schließen lassen
also ich glaube es wäre einfacher eine eigene form zu nehmen, auf die eine label mit der frage, 1-4 buttons mit ja/nein/vielleicht/alle und einen timer, der das ganze nach 5 minuten schließt zu packen...
|
Re: MessageDialog nach 5 Minuten schließen lassen
Wozu braucht man denn einen Dialog mit Vielleicht als Auswahlmöglichkeit?
Außerdem könnte man das auch ohne Timer machen. Nämlich mit delay:
Delphi-Quellcode:
procedure delay(msec:longint);
var start,stop:longint; begin start := gettickcount; repeat stop := gettickcount; application.processmessages; until (stop - start ) >= msec; end; |
Re: MessageDialog nach 5 Minuten schließen lassen
das mit vielleicht war ein joke. nächstmal schreib ich es dabei :?
delay finde ich persönlich ***. es unterbindet zuweilen das schließen einer form. und bei fünf minuten ist das *** |
Re: MessageDialog nach 5 Minuten schließen lassen
Zitat:
Delphi-Quellcode:
procedure TMyThread.Execute;
begin Sleep(5*60*1000); // 5 min wnd := FindWindowEx(Application.MainForm.Handle, 0, nil, 'GesuchterFensterTitel'); if wnd <> 0 then begin BringWindowToTop(wndOption); // Ab und zu nötig SendMessage(wndOption, WM_COMMAND, ID_OK, 0); // OK-Taste drücken end; end; |
Re: MessageDialog nach 5 Minuten schließen lassen
Danke Dir, werde das mal ausprobieren.
Gruß |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:21 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