ich habe ein kleines Problem beim Abfangen von KeyPressEvents.
Ich möchte einen Motor mit Tasten rotieren lassen. Wenn ich die Tasten einmal und kurz drücke ist das ganze kein Problem. Bei schnellem oder längerem Drücken unterbricht sich die Funktion jeweils selbst.
Die Funktion zum Abfangen der keyPressEvents sieht so aus:
Code: Alles auswählen
keyPressEvent(QKeyEvent* e){
switch(e->key()){
case Qt::Key_A:
moveMotor(10,LEFT);
break;
case Qt::Key_D:
moveMotor(10,RIGHT);
break;
[...]
}}
Code: Alles auswählen
moveMotor(int deg, Direction d)
{
//drehe Motor um deg Grad in Richtung d
[...]
}
einmal Taste drücken -> Motor dreht 10 Grad
während des Drehens nochmal drücken -> warte bis vorherige Drehung abgeschlossen ist und beginne dann neue Drehung
Ich hoffe Ihr könnt mir helfen, auch wenn ich mich vielleicht stellenweise etwas kryptisch ausgedrückt habe. Ansonsten fragt einfach nochmal nach...
Viele Grüße
Paul