3
我想在X11中繪製彈出窗口。像按下音量或亮度控制按鈕時出現在KDE和GNOME中的滑塊。這就是它在GNOME中的樣子:在X11中繪製彈出窗口
我應該使用什麼庫來創建這樣的彈出窗口(與普通窗口不同,它們應該是無邊框等,可能還有一些透明度)?如果有Python的綁定會很好。
我想在X11中繪製彈出窗口。像按下音量或亮度控制按鈕時出現在KDE和GNOME中的滑塊。這就是它在GNOME中的樣子:在X11中繪製彈出窗口
我應該使用什麼庫來創建這樣的彈出窗口(與普通窗口不同,它們應該是無邊框等,可能還有一些透明度)?如果有Python的綁定會很好。
這是在GTK +中完成的。最簡單的事情可能是找到創建該代碼並複製它的代碼(我的系統具有不同的卷通知器,我不容易找到該代碼)。
粗略地說,你要做的是創建一個GtkWindow,set_decorated(FALSE),set_position(GTK_WIN_POS_CENTER),沿着這些行。
我不確定最好的set_type_hint()。可能是TYPE_HINT_NOTIFICATION或TYPE_HINT_SPLASHSCREEN。如果設置了類型提示,則可能不需要set_decorated或set_position,因爲類型提示可能暗示那些具有多個窗口管理器的提示。
謝謝!將類型提示設置爲TYPE_HINT_DOCK使其看起來完全如我所願=) – 2011-04-28 16:01:00
DOCK可能是誤導性的;窗口管理員可以合法地做一些只對實際碼頭有意義的事情,比如保持最大化的窗口不與其重疊。 NOTIFICATION和SPLASHSCREEN已經在推動它。 – 2011-04-28 20:32:40
pygtk中沒有NOTIFICATION,如果沒有設置set_keep_above,SPLASHSCREEN可以被其他窗口覆蓋。用set_keep_above SPLASHSCREEN確實可能會更好。 – 2011-04-29 00:38:24