1
PyGTKでは、私はEntryとTreeViewを持っています。 TreeViewがフォーカスされると、キーイベント(Up、Down、PageUp、PageDown)はビュー内の選択を特定の方法で移動します。 Entryがフォーカスされているときにこれらの主要なイベントをインターセプトし、ツリービューにフォーカスを当てたように選択が移動されるようにTreeViewにリダイレクトします。PYGTKイベントをTreeViewにリダイレクト
Entryのキープレスイベントを傍受し、必要なキー用かどうかを判断できますが、TreeViewに渡すのに問題があります。
# In UI initialization
self.name_entry = gtk.Entry(max=0)
self.name_entry.connect('key-press-event', self.on_key_press)
store = self.create_store() # a simple ListStore is created here
view = gtk.TreeView(store)
rendererText = gtk.CellRendererText()
column = gtk.TreeViewColumn("Name", rendererText, text=0)
column.set_sort_column_id(0)
view.append_column(column)
self.tree_view = view
# ...
def on_key_press(self, widget, event):
if event.keyval == UP:
self.tree_view.do_something() # ???
return True
# etc. for other keyvals
フォーカスがある間にキーが押されたかのように、tree_viewにイベントを処理させる方法はありますか?すべてのヘルプは高く評価され
;:
(私はここではPyGTK開発のベストプラクティスのために気にしないプログラムはハックであることに注意してください。)。