我仍在学习PyGTK,并且我在尝试弄清楚如何在每次我按下F1键时告诉窗口固定/取消固定(也称为切换总是在顶部)。
这就是我到目前为止所得到的。
#!/usr/bin/env python
import gtk
class app(gtk.Window):
def pinning(self, widget, event) :
if event.keyval == gtk.keysyms.F1 :
self.set_keep_above(True)
def __init__(self):
super(app, self).__init__()
self.set_position(gtk.WIN_POS_CENTER)
self.set_title("TestApp")
self.set_default_size(320, 200)
self.connect("destroy", gtk.main_quit)
self.connect("key-press-event", self.pinning)
self.show_all()
app()
gtk.main()发布于 2011-07-22 23:42:16
不幸的是,没有get_keep_above()方法。您必须连接到窗口的window-state-event信号;在event参数中,读取new_window_state字段以查看是否设置了粘滞标志,然后自己跟踪它,例如在self.is_kept_above中。
然后你可以这样做
if self.is_kept_above:
self.set_keep_above(False)
else:
self.set_keep_above(True)在您的F1处理程序中。
发布于 2011-07-22 00:11:09
通常,您可以捕获按键,然后发出您想要的任何信号,就像我在回答中所写的那样:PYGTK redirect event to TreeView
https://stackoverflow.com/questions/6773994
复制相似问题