Forums Neueste Beiträge
 

Nebenläufigkeit, schließen von Commondialogs

20/11/2007 - 21:11 von Jens Müller | Report spam
Hallo,

es gibt den Fall, dass gerade ein Commondialog offen ist (z.B. Datei
Öffnen) und ein Ereignis eintritt, ein Timer, oder ein API Callback
(AddressOf Prozedur); dieses ereignis sorgt dafür, dass die Form
unsichtbar gemacht wird.
Dann verabschiedet sich das Programm (keine Absturzmeldung), wenn es
als EXE ausgeführt ist. In der IDE ausgeführt gibt es keine Fehler.

Wie kann ich herausfinden, ob der Code gerade irgendwo durch eine
Modale Meldung, Commondialog, etc angehalten wird, und die Anwendung
dementsprechend nicht auf das nebenlàufige Ereignis reagieren kann?

Grüße,

Jens
 

Lesen sie die antworten

#1 Harald M. Genauck
20/11/2007 - 22:32 | Warnen spam
Hallo Jens,

es gibt den Fall, dass gerade ein Commondialog offen ist (z.B. Datei
Öffnen) und ein Ereignis eintritt, ein Timer, oder ein API Callback
(AddressOf Prozedur); dieses ereignis sorgt dafür, dass die Form
unsichtbar gemacht wird.



Dieses Unsichtbarmachen ist beabsichtigt und wird von von Dir
geschriebenem Code bewerkstelligt?

Dann verabschiedet sich das Programm (keine Absturzmeldung), wenn es
als EXE ausgeführt ist. In der IDE ausgeführt gibt es keine Fehler.

Wie kann ich herausfinden, ob der Code gerade irgendwo durch eine
Modale Meldung, Commondialog, etc angehalten wird, und die Anwendung
dementsprechend nicht auf das nebenlàufige Ereignis reagieren kann?



Vor dem Starten der modalen Meldung oder eines Commondialogs eine im
passenden Gültigkeitsbereich angelegte Flag-Variable setzen und vor der
Bearbeitung dieser "unerwünschten" Ereignisse auswerten - und natürlich
nach dem Schließen der Meldung bzw. des Dialogs wieder zurücksetzen.

Evtl. wàre es aber besser, den Timer oder das, was Callbacks auslöst,
vorübergehend anzuhalten.

Bei modalen Meldungen (MsgBox) gibt es in der IDE keinen Fehler, weil
diese dort wirklich total modal ist - auch Timer werden angehalten. In
der Exe hingegen laufen z.B. Timer im Hintergrund weiter.


Viele Grüße

Harald M. Genauck

"visual studio one" - http://www.visualstudio1.de (Chefredakteur)
"ABOUT Visual Basic" - http://www.aboutvb.de (Herausgeber)

Ähnliche fragen