Schleife fuer Windowsnachrichten unterbrechen
-
Hi,
fuer eine 3D-Anwendung habe ich eine Animation programmiert, die in einer While-Schleife ablaeuft. Das ganze 3D-Gedoens kann man durch ziehen mit der Maustaste rotieren.
Wenn ich allerdings die While schleife durchlaufen lassen, ist die funktion gesperrt, d.h. solange diese laeuft, wird natuerlich nicht in meine LButtonDown Funktion gesprungen. Gibt es einen Befehl, den ich in meine Schleife einbauen kann, der Windows sagt, er soll mal kurz die Schleife unterbrechen und nach Maus-Eingaben suchen?
viele gruesse,
bjoern
-
Morgen,
Ich glaube du bist hier im falschen Forum. Falls du Borlands VCL benutzt, plazier
'Application->ProcessMessages()' in die Schleife, ansonsten kann ich dir auch
nicht weiterhelfen.Das plazieren des o. genannten Codestuecks fuehrt dazu, dass Benutzeraktionen
weiterhin abgefragt werden.Wenn du spezielle Hilfe brauchst, dann musst du schon im entsprechenden Forum
posten.mfg
v R
-
du darfst die animation nicht am stück ablaufen lassen.
so sollte es sein:
//pseudocode while(programm läuft) get messages if(maustaste zieht)// :D berechne neues bild zeichne bild
-
Das ist leider nicht moeglich, weil meine Anwendung eine MDI Anwendung ist und das 3D-Fenster eine Picturebox ist, die in eine Dialogbox eingelassen ist, die wiederrum ein Child-Window ist.
Um die Messages als API abzufangen (hoffe, das habe ich jetzt richtig ausgedrueckt, kenne mich da nicht so aus), muesste ich im Hauptprogramm die OnIdle Funktion ueberladen und das ist aufgrund der Struktur zu kompliziert.
Gibts noch einen anderen Weg?
Achso, ist das keine C++ Frage? Benutze Visual Studio.
-
bjoernfal schrieb:
Das ist leider nicht moeglich, weil meine Anwendung eine MDI Anwendung ist und das 3D-Fenster eine Picturebox ist, die in eine Dialogbox eingelassen ist, die wiederrum ein Child-Window ist.
Um die Messages als API abzufangen (hoffe, das habe ich jetzt richtig ausgedrueckt, kenne mich da nicht so aus), muesste ich im Hauptprogramm die OnIdle Funktion ueberladen und das ist aufgrund der Struktur zu kompliziert.
Gibts noch einen anderen Weg?
Achso, ist das keine C++ Frage? Benutze Visual Studio.
Nein, C++ kennt keinerlei GUI.
mfg
v R
-
Wenn du uns noch verraten köntest, welches Framework du benutzt (WinAPI, MFC, .NET, etc.), könnte man dich ins entsprechende Forum verschieben.
-
MFC benutz ich. Danke!
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum MFC mit dem Visual C++ verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.