Delphi-PRAXiS

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/)
-   -   Delphi Probleme mit TJvDesktopAlert (https://www.delphipraxis.net/129395-probleme-mit-tjvdesktopalert.html)

Jackie1983 18. Feb 2009 11:13


Probleme mit TJvDesktopAlert
 
servus,

habe da einen Thread der führt bestimmte Dinge aus.
Der Thread wird mit FreeOnTerminate := true; gestartet.

Er ruft diese Methode auf
Delphi-Quellcode:
Procedure Tools_WinPopup(Betreff, Text: string);
var
  popup : TJvDesktopAlert;
begin
  popup := TJvDesktopAlert.Create(nil);
  popup.AutoFocus := true;
  popup.AutoFree := true;
  popup.HeaderText := Betreff;
  popup.MessageText := Text;
  popup.StyleOptions.DisplayDuration := 6000;
  popup.FreeOnRelease;
  popup.Execute;
end;
Nur leider kommt kein Popup. Es hat mal funktioniert, das hängt bestimmt irgend wie mit dem Thread zusammen, aber keine ahnung wieso und weshalb.
Hoffe ihr könnt mir helfen.

mfg

jbg 18. Feb 2009 11:25

Re: Probleme mit TJvDesktopAlert
 
Zitat:

Zitat von Jackie1983
das hängt bestimmt irgend wie mit dem Thread zusammen, aber keine ahnung wieso und weshalb.

Es liegt am Thread. TJvDesktopAlert greift auf die VCL zu. Und allein das fordert eine Ausführung im Hauptthread. Das Problem ist, dass Fenster-Handle eine Thread-affinität haben. Und wenn ein Fenster in Thread A erstellt wird, laden sämtliche Botschaften in der Botschaftsschleife von Thread A. Hat dieser Thread aber keine Botschaftsschleife (while GetMessage do ...), dann wird auch keine Botschaft verarbeitet (die über PostMessage gesendet wird).

Jackie1983 18. Feb 2009 11:29

Re: Probleme mit TJvDesktopAlert
 
na dolle, wie könnte ich das denn dann lösen.
Möchte es nicht im Hauptthreat starten sondern in meinem Thread.
Und wenn mein Thread die Funktionen aufgerufen hat soll er sich automatisch beenden und freigeben.
Da kann ich kein getmessage einbauen...


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:54 Uhr.

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