Domanda

Sto scrivendo un'applicazione di test che simula la pressione dei tasti di un'altra applicazione. Per ogni pressione di un tasto che devo controllare se viene visualizzata la finestra / modulo a destra. Quindi quello che faccio è ottenere il puntatore della finestra viene mostrato e farlo di titolo della finestra. Tuttavia, non tutte le finestre / forme mostrati i titoli della finestra. Così sto pensando che sarebbe stato meglio per ottenere il nome della classe, invece. Come posso ottenere il nome della classe?

QWidget *pWin = QApplication::activeWindow();

quando provo:

pWin->className(); 

per ottenere il nome della classe, sto ottenendo:

  

"Errore: classe QWidget non ha alcun membro denominato 'className'"

Qualcuno mi può mostrare la strada giusta?

È stato utile?

Soluzione

Provare a utilizzare il metaobject .

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

Altri suggerimenti

Si potrebbe anche verificare l'intestazione typeinfo. Utilizzando l'operatore typeid su di voi oggetto che si ottiene un'istanza type_info che descrive il tipo di oggetto. Partenza: http://www.cplusplus.com/reference/std/typeinfo/type_info /

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top