2012-04-03 1 views
2

PythonにXlibモジュールを使用して、configure.sql()とconfigure.sync()をそれぞれ呼び出してウィンドウを移動、サイズ変更、破棄することができました。Pythonでウィンドウの名前を変更する

ただし、既存のウィンドウの名前を変更することはできません。次のコードは、 'foo'を出力します。

window.set_wm_name('foo') 
window.set_wm_icon_name('foo') 
print window.get_wm_name() 

これはオブジェクトが正しく更新されることを示します。しかし、私の画面では、display.sync()を呼び出した後でも、ウィンドウのタイトルはまったく変更されません。私はset_wm_name関数を正しく使用していますか?この種のタスクにまったく使用されるべきですか?

答えて

0

私はめちゃめちゃ遅く、この答えとイム知っているが、おそらく誰かがそれは私が何か間違ったことwindow.get_wm_name()...イム確認イムを取得できませんでしてきた

from Xlib.display import Display 
from Xlib.Xatom import STRING 


display = Display() 
root = display.screen().root 
#view the current WM_NAME 
a = root.get_full_property(display.intern_atom('_NET_WM_NAME'), STRING) 
print a.value 
#Actualy change WM_NAME 
root.change_property(display.intern_atom('_NET_WM_NAME'), STRING, 8, ' MyApp') 


#read the name again 
b = root.get_full_property(display.intern_atom('_NET_WM_NAME'), STRING) 
print b.value 

便利でしょうが、このちょうど同様に動作します:)