![]() |
Thread und XP Theme
Hallo zusammen,
ich habe folgendes Problem um bitte um eure Hilfe. - Ich habe eine Anwendung, die das XP Manifest einbindet. - In der Anwendung läuft ein zweiter Thread - Wird in dem 2. Thread ein neues Formular erzeugt hat dieses nicht den XP Style Warum?? Die Fenster, die aus dem Hauptthread erzeugt werden übernehmen den XP Style. Ich erzeuge das Formular im Thread durch
Delphi-Quellcode:
wenn ich Create(Application)benutze gibt es sofort eine Exception!
Form1:=TForm1.Create(nil)
Ok, jetzt bin ich mal auf eure Antworten gespannt :-D Danke im vorraus euer Baeuerle |
Re: Thread und XP Theme
Frage: Hast du Synchronize benutzt?
|
Re: Thread und XP Theme
Die VCL ist nicht Thread-Safe.
Alle Formulare/Controls dürfen nur im Haupt-Thread erzeugt/angesprochen/gelöscht werden. |
Re: Thread und XP Theme
@marco
danke das hat mich auf den richtigen weg gebracht. hab mal wieder den wald vor lauter bäumen nicht gesehen :wall: habe es in synchronize ausgelagert und dann geht auch create(application) vielen dank Zitat:
|
Re: Thread und XP Theme
Zitat:
|
Re: Thread und XP Theme
ihr schlagt also volgendes vor:
- formular beim initialisieren der Anwendung erzeugen - bei bedarf anzeigen ( vom thread aus ) - formular beim schließen der Anwendung wieder freigeben Korrekt ???? |
Re: Thread und XP Theme
Vielleicht etwas unscharf ausgedrückt. Solange es im Syncronize läuft, sollte es keine Probleme geben. Nur wenn du direkt im Thread etwas mit der VCL machst, gibt es Probleme.
Also wenn du das Erstellen und freigegeben des Formulars in Syncronize machst, sollte es eigentlich klappen :) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:27 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