Я имитирую keyPresses для приложения через Qt KeyPress. Все KeyPresses работают нормально. Однако, когда я передаю QT::Key_Enter
, который должен нажать кнопку ОК текущего активного окна, или 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?