我正在写一个测试程序来模拟按键和我想获得每一个按键后显示的内容窗口。下面的代码块。

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

在这里按0后,窗口是要显示出来,我想,以检查它是什么窗口,所以我可以QCompare /后评估。

任何想法?

<强>更新

我收到分段故障,当我使用

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"));
有帮助吗?

解决方案

如果您所有的窗户都被通过应用程序创建的,您可以使用 QApplication 类。 通过例如, activeWindow() 函数返回具有输入焦点的窗口小部件。但是有很多其他的功能,可以帮助你。

希望帮助

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top