문제

I'm writing a test app which simulates key presses and I would like to get what window is displayed after each key presses. Here's the code block.

std::auto_ptr<MyForm> pForm(new MyForm(3,3)); 
QTest::keyPress(pForm.get(), Qt::Key_0); 

After pressing 0 here, A window is gonna show up and I would like to check what window it is so I could QCompare/evaluate it later.

Any Ideas?

Updated:

I'm getting a segmentation fault when I use

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"));
도움이 되었습니까?

해결책

If all your windows have been created through your application, you can use the QApplication class. By example, the activeWindow() function returns the widget that have the input focus. But there's a lot of other functions that can help you.

Hope that helps

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top