Question

J'écris une application de test qui simule touches d'une autre application. Pour chaque pression de touche, je dois vérifier si la fenêtre de droite / formulaire est affiché. Alors ce que je fais est d'obtenir le pointeur de la fenêtre étant affichée et l'obtenir de titre de la fenêtre. Cependant, toutes les fenêtres / formes indiquées les titres de fenêtre. Donc, je pense qu'il serait préférable d'obtenir le nom de la classe à la place. Comment puis-je obtenir le nom de la classe?

QWidget *pWin = QApplication::activeWindow();

lorsque je tente:

pWin->className(); 

pour obtenir le nom de la classe, je reçois:

  

"erreur: QWidget n'a pas membre nommé 'className'"

Quelqu'un peut-il me montrer le droit chemin?

Était-ce utile?

La solution

Essayez d'utiliser le métaobjets .

pWin->metaObject()->className();  

Autres conseils

Vous pouvez également vérifier l'en-tête de typeinfo. Utilisation de l'opérateur typeid sur vous opposez vous obtenez une instance type_info qui décrit le type de votre objet. Départ: http://www.cplusplus.com/reference/std/typeinfo/type_info /

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top