7
我正在編寫一個模擬按鍵的測試應用程序,我想在每次按鍵後顯示窗口。這是代碼塊。Qt:我如何獲得當前正在運行的窗口?
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"));
+1這是正確的解決方案。 – Venemo 2010-11-18 08:58:02
雖然我收到了分段錯誤。我可能會做錯什麼......我更新了上面的代碼塊...... :( – Owen 2010-11-18 10:45:02
)正如文檔中的解釋,如果沒有窗口具有輸入焦點,返回指針可以爲null。這可能發生在寡婦沒有鍵盤輸入試着在你的測試窗口中添加一個QTextEdit – 2010-11-18 10:51:36