0

タッチスクリーン用の Qt アプリケーションを開発しようとしています。このアプリケーションは、Qt Everywhere 4.7.2 を搭載した ARM システムで実行されています。

このアプリケーションでは、ログイン用の特定の画面を表示する必要があります。次に、ユーザーが「OK」ボタンを押すと、入力された情報が正しいかどうかを確認する必要があります。そのためには、サーバーにメッセージを送信する必要があり、その間に待機画面を表示したいと考えています。画面を切り替えることができるいくつかのクラスが既にあり、それは機能します。問題は、表示リクエストの後にコードを入れると、実行されますが画面が表示されないことです。

例 :

display_->CloseActualScreen();
display_->SetScreenId( MTO_Display::WAITING_SCREEN );
display_->ChooseScreenToDisplay();

基本的には画面を切り替える方法です。display_特定のオブジェクトです。オブジェクトを削除することCloseActualScreen()で、表示中の画面を閉じます。次にChooseScreenToDisplay()、画面 ID に応じて新しいウィジェットを作成して表示します。必要に応じてこれらのメソッドのコードを配置できますが、そのように使用すると機能します。

次に、私がそれを行うと:

display_->CloseActualScreen();
display_->SetScreenId( MTO_Display::WAITING_SCREEN );
display_->ChooseScreenToDisplay();
CallToAnotherFunction();

CallToAnotherFunction()うまく実行されますが、ここでは待機画面がまったく表示されません。この動作の理由はわかりません。

アイデアはありますか?

ありがとう !

4

1 に答える 1

1

Arg x) これを 2 日間検索し、ここで質問した直後に解決策を見つけました... x)残りのコードを実行する前にすべてのイベントを処理するには、QApplication::processEventsを使用する必要があります。

于 2011-12-12T08:58:03.913 に答える