0

ビデオプレーヤーをPyTkからwxWidgetsに移植しています。

30ミリ秒ごとにイベントをメインアプリにプッシュする個別のワーカースレッドがありますwx.PostEvent(これらの手順に基づく:http ://wiki.wxpython.org/Non-Blocking%20Gui )。メインアプリは、ビデオファイルから新しいフレームを読み取って表示することになっています。イベントは適切に受信および処理されますが(デバッグステートメントで確認)、画面上の実際の画像は更新されません。GUIは、ワーカースレッドが終了した後にのみ更新されるため、最後のフレームしか表示されません。

フレームの読み取りと表示のコードは正しく機能します。スライダーを使用してテストしました。GUIが更新されない理由がわかりません。

PyTkには、ウィジェットの再描画を強制するupdate_idletasksというメソッドがあります。私はwxWidgetsで同様のことをする必要があると感じています-これは本当ですか?はいの場合、update_idletasksに代わるwxWidgetsは何ですか?

4

1 に答える 1

1

私の推測では、これは wxWidgets というよりも Windows に関連したものです。ビデオ フレームを含むウィンドウを再描画する必要があることをウィンドウ マネージャーに伝える必要があるかもしれません。そのウィンドウで Refresh() または Invalidate() を呼び出すと、試してみる価値があるかもしれません。

于 2013-03-22T13:45:19.203 に答える