Как использовать QTest::mouseClick с QAction
Я очень новичок в Qt, и мне нужно смоделировать щелчок, используя QTest
Пространство имен и QTest::mouseClick
, Моя проблема в том, что я хотел бы нажать QMenu
запись, определенная как QAction
, но mouseClick
функция не позволяет мне передать это в качестве аргумента (только QWidgets
или же QWindows
).
Что я мог сделать здесь?
2 ответа
Вы можете использовать другой способ таких прямых триггеров вашего QAction's
насколько они у вас есть
qAction->trigger();
Это должно иметь то же влияние, что и щелчки мышью в целях тестирования.
QAction
сам по себе не имеет никакого пользовательского интерфейса, поэтому на него нельзя нажать.
Однако его можно подключить к нескольким компонентам пользовательского интерфейса, например, к QMenu
или QToolBar
, который можно нажать.
Таким образом, если ваши тесты должны имитировать какое-то взаимодействие с пользователем, вы имитируете его с помощью части пользовательского интерфейса, созданной для действия, например, соответствующей кнопки инструмента на панели инструментов или входа в меню.