Seite 1 von 1

[gelöst] Widget update

Verfasst: 16. Mai 2007 09:38
von theRiddler
Hi!

Kennt jemand eine Möglichkeit, damit sich ein Widget immer updated - auch wenn die Applikation minimiert ist?
Ich habe das Problem dass bei mir Daten übertragen werden und sobald die Applikation diese Nachrichten bekommt soll ein update (PassiveWindow OpenSGWidget) durchgeführt werden.

Es besteht eine SocketVerbindung zwischen den beiden Applikationen - sobald ein Benutzer eine Eingabe macht (Objekt wird in eine Szene eingefügt) werden die notwendigen Daten an den anderen Benutzer gesendet. Die Applikation des Empfängers soll das entsprechende Widget sofort nach Empfang der Daten updaten - egal ob die Maus auf der Applikation gerade bewegt wird oder nicht - auch wenn der Benutzer das Programm gerade minimiert hat und ein anderes Programm verwendet.

Soweit ich weiss wird das update des widgets nur wirksam wenn der User die Applikation "benutzt".

Vielen Dank!

QT 3.3 (OpenSource)

Verfasst: 16. Mai 2007 10:18
von macman
Ich versteh nicht ganz. Dein Widget ist zu sehen und wenn Daten kommen, dann ändert sich was. Dein Widget wird jetzt minimiert, Du schickst weiter Daten und wenn Du es wieder zum Vorschein bringst, dann fehlt was? Oder wie soll ich das verstehen?

Verfasst: 16. Mai 2007 12:52
von c_m
Das wäre dann imho allerdings ein Designfehler.

Verfasst: 16. Mai 2007 13:21
von theRiddler
hmm.. was genau ist der Designfehler?

Verfasst: 16. Mai 2007 13:24
von franzf
theRiddler hat geschrieben:hmm.. was genau ist der Designfehler?
Die Auskunft gibts nur, wenn du uns bissl Code zeigst ;)

Verfasst: 22. Mai 2007 09:45
von theRiddler
Ich weiss zwar nicht welcher Code hier hilfreich wäre, weil es nur um das updaten eines Widgets geht (meiner Meinung nach zumindest).
Ich habe eben eine Funktion, die mit dem update aufgerufen wird, die mir dann die neuen Objekte, die übers Netz empfangen wurden anzeigt.
Würde ich meine Funktion im Recv-Thread aufrufen, müsste ich wieder auf das update von QT warten damit beide Threads eine Barriere erreichen (Aspects bei OpenSG).

Ich bräuchte eben sotwas wie die update-Funktion, die aber ständig (ohne UserInteraktion) aufgerufen wird. ;)

Wenn mir gesagt wird welche CodePassage hilfreich ist, stell ich diesen gerne rein!

Verfasst: 22. Mai 2007 11:27
von macman
theRiddler hat geschrieben:Ich bräuchte eben sotwas wie die update-Funktion, die aber ständig (ohne UserInteraktion) aufgerufen wird. ;)
Wenn die update-Funktion eines Widgets nichts bringt, dann heißt das soviel wie, die Eventloop des Programms kommt nicht zum Zuge. Das wäre ein Designfehler deiner App. Du kannst nach einem update ein processEvents aufrufen, das sollte Abhilfe schaffen.

Verfasst: 22. Mai 2007 12:11
von theRiddler
Danke!