2016-10-11 4 views
4

Je suis très nouveau à Qt, et j'ai besoin de simuler un clic en utilisant l'espace de noms QTest et QTest::mouseClick. Mon problème est que je voudrais cliquer sur une entrée QMenu, définie comme QAction, mais la fonction mouseClick ne me permet pas de passer cela comme un argument (seulement QWidgets ou QWindows).Comment utiliser QTest :: mouseClick avec QAction

Que pouvais-je faire ici?

Répondre

3

Vous pouvez utiliser une autre façon ces déclencheurs directs de votre QAction's aussi loin que vous les avez:

qAction->trigger(); 

Cela devrait avoir le même impact que les clics de souris à des fins de test.

0

Un QAction ne possède aucune interface utilisateur, il ne peut donc pas être cliqué.

Il peut cependant être branché sur plusieurs composants d'interface utilisateur, par ex. dans un QMenu ou un QToolBar, qui peut être cliqué. Par conséquent, si vos tests ont besoin de simuler une interaction utilisateur, vous pouvez la simuler avec la partie de l'interface utilisateur créée pour l'action, par exemple,

le bouton d'outil correspondant sur la barre d'outils ou l'entrée dans un menu

+0

Où puis-je trouver un échantillon pour cliquer sur le menu, puis sur l'élément de menu? –