2
我希望能夠檢測到我的應用程序是否已被用戶設置爲全屏。我知道我可以使用gtk.window.fullscreen()
方法使窗口從代碼全屏顯示,並且該操作還會發出窗口狀態事件信號,但是當我編寫回調函數時,我無法區分事件何時激活通過全屏請求或通過不同的事件,例如最小化窗口到起始欄。如何檢測窗口是否已更改爲全屏?在pygtk中檢測全屏
我希望能夠檢測到我的應用程序是否已被用戶設置爲全屏。我知道我可以使用gtk.window.fullscreen()
方法使窗口從代碼全屏顯示,並且該操作還會發出窗口狀態事件信號,但是當我編寫回調函數時,我無法區分事件何時激活通過全屏請求或通過不同的事件,例如最小化窗口到起始欄。如何檢測窗口是否已更改爲全屏?在pygtk中檢測全屏
你只需要檢查event details。
changed_mask
。new_window_state
。這通常會轉化爲下面的代碼:
# 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)
我嘗試過了,也沒有工作,所以我搞砸它了一下,發現我需要使用,而不是全屏WINDOW_STATE_MAXIMIZE讓它起作用。 – user381261 2011-01-29 21:31:30