Как использовать QTest::mouseClick с QAction

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

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

2 ответа

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

qAction->trigger();

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

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

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

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

Другие вопросы по тегам