XbpCrt():Destroy() zeigt Fenster nochmal versetzt

Grafische Primitive, XbaseParts und Darstellungsfragen allgemein.

Moderator: Moderatoren

Antworten
DelUser01

XbpCrt():Destroy() zeigt Fenster nochmal versetzt

Beitrag von DelUser01 » Fr, 30. Mär 2018 18:00

Seit einigen Monaten habe ich folgenden Effekt:
Beim Beenden einer EXE mit XbpCrt()-Fenster verschwidet das Fenster und "blinkt" an einer anderen Stelle auf dem Desktop nochmal sehr kurz auf.

Win 10 Prof 64 DE, Xbase++ 2.00.918

Jetzt bin ich der Sache auf den Grund gegangen und habe folgendes festgestellt:
Beim herunterfahren meines Programms wird meine AppExit() durchlaufen. Darin zerstöre ich das XbpCrt-Objekt und dabei entsteht der Effekt:
oCrt:Destroy() // hier passiert es
oCrt := NIL

Wenn ich das so mache ist der Effekt ist weg:
oCrt:Hide()
Sleep( 25 ) // ohne Sleep() nutzt Hide() alleine nichts!
oCrt:Destroy()
oCrt := NIL

Und der Effekt ist auch weg wenn ich oCrt gar nicht anfasse und vom EXE abbauen lasse.

Wie geht Ihr vor beim Beenden einer Hybrid-EXE - zerstört Ihr auch an irgend einer Stelle das XbpCrt() ?

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 11426
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: XbpCrt():Destroy() zeigt Fenster nochmal versetzt

Beitrag von AUGE_OHR » Fr, 30. Mär 2018 18:54

DelUser01 hat geschrieben:
Fr, 30. Mär 2018 18:00
Wie geht Ihr vor beim Beenden einer Hybrid-EXE - zerstört Ihr auch an irgend einer Stelle das XbpCrt() ?
ist oCrt ein XbpCrt() ?

ich gehe gwöhnlich auf

Code: Alles auswählen

oParent:Destroy() 
womit dann alles in der o:Childlist() mit aufgeräumt wird.
gruss by OHR
Jimmy

DelUser01

Re: XbpCrt():Destroy() zeigt Fenster nochmal versetzt

Beitrag von DelUser01 » Fr, 30. Mär 2018 19:29

AUGE_OHR hat geschrieben:
Fr, 30. Mär 2018 18:54
ist oCrt ein XbpCrt() ?
Ja - es geht ja nur um XbpCrt()

Antworten