QCanvas::update() funktioniert nicht
Verfasst: 16. August 2009 21:29
Hallo erstmal (hab mich gerade erst angemeldet). Und natürlich gibts direkt ein Problem zu lösen 
Das Problem: Bei einmaligem aufrufen von mycanvas.update() (auch wenn ich vorher mycanvas.setAllChanged() aufrufe) passiert nichts.
An der Stelle wo der Fehler auftritt wird eine Schleife durchlaufen, die so lange ausgeführt wird, bis ein Skript abgearbeitet wurde. Jede Zeile im Skript stellt einnen Befehl dar. Wenn der Befehl z.B. ducken heißt, wird ein neues Bild geladen, also z.B.
playeritem ist ein QCanvasRectangle, dass ein QImage anzeigt (drawShap ist vorhanden). danach soll das QCanvas das Bild auch anzeigen, also
Das Problem ist nun, dass das update() offenbar nicht funktioniert, jedenfalls wird immer erst der nächste Skript Befehl ausgeführt, z.B. sleep 1000 und erst nach der Wartezeit wird dann das Bild angezeigt.
Außerdem habe ich herausgefunden, dass es funktioniert, wenn man 5 mal hintereinander setAllChanged(); update(); aufruft... Bevor ich so was verwende, wollte ich mal wissen, ob es vielleicht auch anders geht
Hat jemand eine Idee oder einen Hinweis wo das Problem liegt?
Das Problem: Bei einmaligem aufrufen von mycanvas.update() (auch wenn ich vorher mycanvas.setAllChanged() aufrufe) passiert nichts.
An der Stelle wo der Fehler auftritt wird eine Schleife durchlaufen, die so lange ausgeführt wird, bis ein Skript abgearbeitet wurde. Jede Zeile im Skript stellt einnen Befehl dar. Wenn der Befehl z.B. ducken heißt, wird ein neues Bild geladen, also z.B.
Code: Alles auswählen
playeritem -> changePicture( loadPicture ( "ducken.png" ) );Code: Alles auswählen
mycanvas.setAllChanged();
mycanvas.update();Außerdem habe ich herausgefunden, dass es funktioniert, wenn man 5 mal hintereinander setAllChanged(); update(); aufruft... Bevor ich so was verwende, wollte ich mal wissen, ob es vielleicht auch anders geht
Hat jemand eine Idee oder einen Hinweis wo das Problem liegt?