2016-10-11 12 views
4

Я очень новичок в Qt, и мне нужно имитировать щелчок, используя пространство имен и QTest::mouseClick. Моя проблема заключается в том, что я хочу щелкнуть запись QMenu, определенную как QAction, но функция mouseClick не позволяет передать это как аргумент (только QWidgets или QWindows).Как использовать QTest :: mouseClick с QAction

Что я могу здесь сделать?

ответ

3

Вы можете использовать другой путь такие прямые триггеры вашего QAction's, насколько вы их:

qAction->trigger(); 

Это должно иметь тот же эффект, как щелчки мыши в целях тестирования.

0

A QAction не имеет никакого пользовательского интерфейса, поэтому его нельзя нажать.

Его можно, однако, подключить к нескольким компонентам пользовательского интерфейса, например. в QMenu или QToolBar, которые можно щелкнуть.

Итак, если ваши тесты должны имитировать взаимодействие с пользователем, вы имитируете его с частью пользовательского интерфейса, созданной для действия, например. соответствующую кнопку инструмента на панели инструментов или запись в меню

+0

Где я могу найти образец для нажатия меню, а затем пункта меню? –