Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Desktop anzeigen -> Fenster lässt sich nicht mehr schließen (https://www.delphipraxis.net/181529-desktop-anzeigen-fenster-laesst-sich-nicht-mehr-schliessen.html)

Jumpy 25. Aug 2014 12:28

AW: Desktop anzeigen -> Fenster lässt sich nicht mehr schließen
 
Seltsam. Was macht den Toggle Desktop da?
Unabhängig davon ob man das Fenster nun sieht oder nicht, sollte der Thread das doch nach X Sekunden schließen, freigeben und sich selbst auch beenden. Deswegen Frage ich mich, ob es das Fenster dann überhaupt noch gibt (unabhängig davon, das Windows meint es darstellen zu müssen wenn man wieder zurück toggelt). Wäre zumindest eine Erklärung warum es angezeigt wird, aber nicht mehr "erreichbar" ist.

Edit:
Kann man da mit irgendwelchen Windows Funktionen, FindWindow/EnumerateWindows und wie sie alle heißen, mal versuchen das Fenster zu finden?

Dejan Vu 25. Aug 2014 12:53

AW: Desktop anzeigen -> Fenster lässt sich nicht mehr schließen
 
Also ich kann mir das gut vorstellen, das Windows da rumzickt, der Workaround scheint meine Vorstellung zu bestätigen.

Die gepostete Meldungsanzeige mit Delay halte ich für fragwürdig, da aus einem Thread heraus ein Formular angefasst wird => ganz gefährlich. Im Einzelfall kann das funktionieren, wenn z.B. nur Messages verschickt werden (WM_CLOSE), aber grundsätzlich ist das keine gute Idee (Wobei mir eine Bessere im Moment auch nicht einfällt, außer selbst eine Messagebox zu bauen).

pertzschc 25. Aug 2014 14:18

AW: Desktop anzeigen -> Fenster lässt sich nicht mehr schließen
 
Zitat:

Zitat von baumina (Beitrag 1269544)
Dieses Verhalten habe ich mit XE und Windows 7 oder Windows XP. Hat jemand eine Idee warum das so ist und was man dagegen tun kann?

Ich kann es zumindest mit einem meiner Programme unter Windows 7 bestätigen.
Mein About-Dialog wird in dem von Dir beschriebene Ablauf auch zu einem Zombie und lässt sich nicht mehr schließen. Erst beim Beenden des Hauptprogramms wird das Fenster mit beendet. War mir so bisher nicht aufgefallen.

Grüße, Christoph


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:44 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz