Domanda

Sto scrivendo un'applicazione di test che avrebbe verificare se la forma visualizzata è la forma corretta. Questo è dopo aver premuto un tasto su un menu. Ecco un blocco di codice dove sto ricevendo un errore di segmentazione.

std::auto_ptr<MyForm> pForm(new MyForm(3,3));  
QTest::keyPress(pForm.get(), Qt::Key_0);  
QWidget *pWin = QApplication::activeWindow(); 
QCOMPARE(pWin->windowTitle(), QString("My Second Menu")); 

Domande:

  • È davvero possibile per ottenere la finestra attiva quando si è appena simulando la pressione dei tasti?
  • sto ottenendo un puntatore nullo quando si utilizza activeWindow, c'è comunque si potrebbe ottenere l'handle della finestra che dovrebbe mostrare sullo schermo su pressione di un tasto?

Grazie ...

È stato utile?

Soluzione

Frank aveva ragione. La finestra non è stato acitivated sincrono. L'aggiunta di un ritardo che è un parametro di keyPress è riuscito a risolvere il problema. Grazie Frank!

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