Frage

Ich schreibe eine Test-Anwendung, die eine andere Anwendung mit einer Reihe von Menüs testet. Ich simulieren Drücken von Tasten unter Verwendung QT :: keyPress. an einem gewissen Punkt jedoch nicht akzeptiert es nicht mehr Drücken von Tasten, bis ich lernte man keyRelease als auch (nach der Dokumentation verwenden muß, die etwas vage für mich war, sagt es „Hinweis: Irgendwann sollten Sie die Taste loslassen mit keyRelease ().“--- aber wann? direkt nach jedem keyPress?)

Der Aufruf einer keyRelease nach jedem Tastendruck ein keyPress simuliert auch die seltsam ist. Der Aufruf keyRelease einmal nach dem ersten Aufruf von keyPress, den Rest der Arbeit Drücken von Tasten und die restlichen Drücken von Tasten keine Arbeit gemacht.

Ich bin verwirrt. Kann mir jemand sagen, wann der richtige Zeitpunkt ist, verwenden keyRelease?

War es hilfreich?

Lösung

QTest::keyPress simuliert ein Benutzer eine Taste drücken, während QTest::keyRelease einen Benutzer simuliert eine Taste losgelassen wird.

Wenn Sie eine Taste drücken Sie ihn freigeben sollte, sonst ist es wie wenn der Schlüssel noch gedrückt wird. Ja, Sie brauchen QTest::keyRelease nach jedem QTest::keyPress Anruf nennen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top