Autor Beitrag
uruz
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 14.06.06 09:15 
Huhu...

ich stehe mal wieder vor einem mittelprächtigen Problem: Ich habe in einer Anwendung eine recht aufwendige Funktion integriert, die mittels mehrerer Threads Dateien von a nach b kopiert... wie auch immer, wenn ich diese Funktion anschmeiße, werden meine Actions in allen TActionBars nicht neu gezeichnet. Bedeutet, wenn ich mit dem Mauszeiger darüber gehe, werden sie "Hot"... wenn ich den Mauszeiger allerdings von Ihnen herunternehme, bleiben sie "Hot". Jaaaa... ich weiss... dafür soll man den inoffiziellen Patch einspielen. Aber alles in allem ist das nur das kleinere Problem... viel größer ist das Problem, dass während meine Funktion läuft, die OnUpdate-Events der Actions nicht mehr ausgelöst werden.... es sei denn, ich klicke manuell mal kurz ins Hauptmenü... dann werden brav alle Actions disabled, die auch ausgeschaltet werden sollen.

Nun habe ich mir zwar auch einen schönen Eventhandler für mein OnDownloadStart gebastelt... und dennoch weigert sich die Anwendung, die Actions brav zu aktualisieren... ich bekomme sie weder mit Sleep noch mit Application.ProcessMessages noch sonst irgendwie dazu, dass sie aktualisiert werden.

Wie kann ich denn nun am sinnvollsten so ein Update für alle sichtbaren Actions erreichen? Gibt es nicht irgendwie etwas wie ActionManager.UpdateAllActions ?

Danke schon mal im Voraus
cartridge
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 209

Win XP
D4 Prof,D6 Prof
BeitragVerfasst: Fr 30.06.06 19:17 
Wenn Du eine Schleife oder so in dem Thread abarbeitest, mache mal Application.ProcessMessages. Wenn dies auch nicht reicht, musst du die Aktionen eben in einer Schleife Updaten. MeineActions[i].Update

Gruß Ingo
crowley
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 406

Win XP, Win Vista, Mandriva, Ubuntu
Delphi 4-8, Delphi 2006, Delphi 2007
BeitragVerfasst: Mi 05.07.06 08:56 
ähnliches problem ohne lösung. in einer schleife abarbeiten ist nicht wirklich möglich... *kopfkratz*... die actions können sich doch in vielerlei listen des ActionManagers verbergen... oder irre ich mich da ?

*kopfkratz*

denke, werd dem ActionManager beizeiten wohl eine neue Funktion spendieren ;)

C.