2011-01-28 4 views
2

私のアプリがフルスクリーンに設定されているかどうかをユーザーが検出できるようにしたい。私はgtk.window.fullscreen()メソッドを使用してウィンドウをコードから全画面にすることができ、そのアクションはウィンドウステートイベント信号も出すが、コールバックを書いたときにイベントがアクティブになったときと例えば、ウィンドウを開始バーに最小化するような、別のイベントによって実行されてもよい。ウィンドウがフルスクリーンに変更されたかどうかをどのように検出できますか?pygtkでフルスクリーンを検出する

答えて

2

event detailsを確認するだけです。

  • イベントをトリガーするユーザーアクションを確認するには、changed_maskをチェックしてください。
  • (イベントの原因に関係なく)新しい状態を確認するには、new_window_stateをチェックしてください。

通常、これは次のコードに変換:私はそれを試してみましたし、それが動作しませんでしたので、私はそれで少し混乱し、私はWINDOW_STATE_MAXIMIZEの代わりに、フルスクリーンにを使用する必要があることが判明

# Did the user actually toggle fullscreen, or was it 
# a different window-state event (e.g. maximize)? 
if event.changed_mask & gtk.gdk.WINDOW_STATE_FULLSCREEN: 
    # What's the new state? 
    print bool(event.new_window_state & gtk.gdk.WINDOW_STATE_FULLSCREEN) 
+0

それを機能させる。 – user381261

関連する問題