QT単体テスト:qtestlib セグメンテーション違反
-
26-09-2019 - |
質問
表示されたフォームが正しいフォームかどうかをテストするテストアプリを作成しています。これは、メニュー上のキーを押した後です。これはセグメンテーション違反が発生しているコード ブロックです。
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"));
質問:
- キーの押下をシミュレートしているだけのときに、現在アクティブなウィンドウを取得することは本当に可能でしょうか?
- activeWindow を使用すると null ポインターが返されます。キーを押したときに画面に表示されるウィンドウのハンドルを取得できますか?
ありがとう...
解決
フランクは正しかったです。窓は同期acitivatedされていません。 KeyPressイベントのパラメータである遅延を追加して、問題を解決しました。おかげでフランク!
所属していません StackOverflow