unit testing - QT: obtener el nombre de clase de un objeto
unit-testing classname (2)
Estoy escribiendo una aplicación de prueba que simula pulsaciones de teclas de otra aplicación. Por cada pulsación de tecla, debo verificar si se muestra la ventana / formulario correcto. Entonces, lo que hago es obtener el puntero de la ventana que se muestra y obtener su título de ventana. Sin embargo, no todas las ventanas / formularios muestran títulos de ventanas. Así que estoy pensando que sería mejor obtener el nombre de la clase en su lugar. ¿Cómo obtengo el nombre de la clase?
QWidget *pWin = QApplication::activeWindow();
cuando intento
pWin->className();
para obtener el nombre de la clase, me estoy poniendo
"error: clase QWidget no tiene ningún miembro llamado ''className''"
¿Puede alguien mostrarme el camino correcto?
Intenta usar el metaobject .
pWin->metaObject()->className();
También puede verificar el encabezado typeinfo. Usando el operador typeid en tu objeto obtienes una instancia de type_info que describe el tipo de tu objeto. Consulte: http://www.cplusplus.com/reference/std/typeinfo/type_info/