7

私は使用してみました:

   win.configure(stack_mode=X.TopIf)
   win.set_input_focus(X.RevertToParent, X.CurrentTime)

ただし、ウィンドウマネージャーでフォーカス損失防止がなくても、これは機能しません。これを行う別の方法を知っている人はいますか? Xlib かどうか。

4

3 に答える 3

3

EWMH/NetWM 互換の X ウィンドウ マネージャと対話できるwmctrlというコマンド ライン ツールがあります。

例えば、

wmctrl -l

ウィンドウマネージャーによって管理されるすべてのウィンドウを一覧表示し、

wmctrl -a Mozilla 

タイトルに文字列 "Mozilla" が含まれるリスト内の最初のウィンドウをアクティブにします。ウィンドウを選択する方法は他にもあります。上記はほんの一例です。

wmctrl を使用すると、ウィンドウを移動およびサイズ変更することもできます。

于 2009-10-31T02:15:56.313 に答える
2

これを試して:

window=Display().screen().root.query_pointer().child
window.set_input_focus(X.RevertToParent, X.CurrentTime)
window.configure(stack_mode=X.Above)
于 2010-07-21T07:40:57.923 に答える
1

おそらくこれが解決策です:
[Xlib] 指定されたウィンドウを強制的にレイズ/マップ/フォーカスする

与えられた解決策 (スレッドに従ってください) には、Python では Gtk+ バインディングの一部である wnck の使用が含まれます。

于 2009-10-30T23:50:57.677 に答える