Tastaturabfrage in einer Methode
-
Hallo
ich steuer hier eine Maschine an. Jetzt soll z.B. in einer Methode gefragt werden, die die Maschine hoch oder runter fahren lässt, ob eine Taste gedrückt wurde und wenn ja, dass die dann stopen soll.
die normale tastaturauswertung hab ich per PreTranslateMessage gemacht
das problem ist aber, dass in der Methode eine Schleife läuft, die erst zu ende ist, wenn ein bestimmter wert erreicht ist
somit logischerweise auch kein normaler nachrichtenabfang möglich
jetzt muss ich diesen abfrage, ob eine taste gedrückt wurde, aber trotzdem in die schleife mit reinnehmen
weiß da jemand was? oder kann ich die PreTranslateMessage einfach in der Schleife aufrufen?
soll so ca sein:
void Maschine::Kraft() { do { intKraft = Fahre(runter); //Tastaturabfrage } while ( (intKraft != gewünschteKraft) || Tastendruck ); }
und da wo //Tastaturabfrage steht, muss die Tastaturabfrage rein, weil ich die Maschine auch stopen muss, wenn irgendwas schief läuft
-
Du kannst Deine Berechnung/Schleife in einem Thread laufen lassen, dann reagiert die Anwendung weiter auf Aktionen.
-
abu
ja, schonmal was von Thread gehört
wie muss ich denn das machen?
kann ich das irgendwo nachlesen?
-
Hallo,
ich hatte mal so ein ähnliches Problem. Ich habs mit PeekMessage() hinbekommen. Das funktionierte bei mir zumindest mit den Tastatureingaben. Schau mal hier nach, vielleicht hilft Dir das weiter.
Gruß Andy
-
hey thx
funzt wunderbar
dankeschön