2010-11-22 3 views
0

Я пишу тестовое приложение, которое тестирует другое приложение с кучей меню. Я имитирую keyPresses с помощью QT :: keyPress. Однако в какой-то момент он больше не принимает keyPresses, пока не узнал, что вам нужно также использовать keyRelease (согласно документации, которая была немного неопределенной для меня, она говорит: «Примечание: в какой-то момент вам следует отпустить ключ, используя keyRelease(). "--- но когда? сразу после каждого нажатия клавиши?)QT: Когда использовать QT :: keyRelease

Вызов ключаВозврат после каждого нажатия клавишиPress также имитирует keyPress, который является странным. Вызов keyRelease один раз после самого первого вызова keyPress, оставил работу keyPresses, а остальные keyPresses не работают.

Я смущен. Может кто-нибудь сказать мне, когда подходящее время для использования keyRelease?

ответ

1

QTest::keyPress имитирует нажатия пользователем клавиши, а QTest::keyRelease имитирует пользователя, отпускающего ключ.

После того, как вы нажмете клавишу, вы должны ее отпустить, иначе все равно, если клавиша все еще нажата. Да, вам нужно позвонить QTest::keyRelease после любого звонка QTest::keyPress.

Смежные вопросы