2016-05-26 12 views
0

ツリービューの項目で押されているEnterキーを検出しようとしています。 目的は、行を編集するためのダイアログボックスを開くことです。私は日を探しています。 「変更された」項目は、Enterキーではなく、リスト内の項目に移動することによってアクティブ化されるため、適切ではありません。 他のすべての試み(ネットから発見)は、さまざまなエラーを生成します。 私はGtkに新しく、これは間違ったアプローチですか? enter code herePython Gtk.Treeview Enter key

 selected_row = tasks_tree_view.get_selection() 
     selected_row.connect("changed", self.item_selected) 
#  selected_row.connect("activate", self.item_selected) 
#  selected_row.connect("pressed", self.item_selected) 
#  selected_row.connect("clicked", self.item_selected) 
#  selected_row.connect(onButtonPressed, self.item_selected) 
#  selected_row.connect("event", self.item_selected) 
#  selected_row.connect("key-press-event", self.item_selected) 
#  selected_row.connect("row-activated", self.item_selected) 
#  selected_row.connect("cursor-changed", self.item_selected) 
+0

「キープレスイベント」は、あなたが望むものと信じています。 – oldtechaa

+0

いいえ、ツリー選択オブジェクトではなく、ツリービュー自体で '' row-activated'に接続してください。 – andlabs

答えて

0

あなたはrow-activated signal of the GtkTreeView objectに接続する必要があります。 GtkTreeSelectionオブジェクトに接続しようとしているため、アプローチが失敗しています。だからあなたの場合には、あなたが

​​

たい(。私は、彼らがPythonでいるのか分からない信号パラメータを心を;。申し訳ありません)

0

私は

を得るためにあなたの答えの両方を組み合わせましたtasks_tree_view.connect("key-pressed", self.item_activated)

これが私の問題を解決しました。

皆さん、ありがとうございました。