, я имитирую keyPresses для приложения с помощью функции Qt KeyPress. Все KeyPress работают нормально. Однако когда я передаю QT :: Key_Enter
, который должен нажимать кнопку OK текущего активного окна, или QT :: Key_Cancel
для кнопки отмены, он ничего не делает.
Я думаю, может быть, потому что у этих кнопок нет фокуса, а он есть у самого родительского окна. Как получить дочерние элементы окна? или, скорее, найти на нем кнопку ОК или Отмена, чтобы вы могли установить его как activeWindow, а затем успешно передать KeyPresses?
У меня есть:
QWidget *pWin = QApplication::activeWindow;
QObjectList *pList = pWin->children();
//how do you iterate through the list and find the OK or Cancel button?