我正在为Gedit插件编写一些代码。我使用的是Python,接口(显然)是GTK。
所以,我遇到的问题很简单:我有一个搜索框(a入口gtk)下面是一个结果框(agtk.TreeView公司). 在你在搜索框中输入一些东西之后,你会看到一堆结果,我希望用户能够按上/下键来选择一个,输入来选择它,然后完成。问题是,我似乎找不到一种方法将向上/向下键按到树视图。目前我有一段代码:
def __onSearchKeyPress(self, widget, event):
"""
Forward up and down keys to the tree.
"""
if event.keyval in [gtk.keysyms.Up, gtk.keysyms.Down]:
print "pressed up or down"
e = gtk.gdk.Event(gtk.gdk.KEY_PRESS)
e.keyval = event.keyval
e.window = self.browser.window
e.send_event = True
self.browser.emit("key-press-event", e)
return True
我可以清楚地看到我收到了正确类型的事件,但是我发送的事件被TreeView忽略了。有什么想法吗?
提前感谢大家。