2010-02-13 2 views
1

트리 뷰가 있으며 cursor-changedrow-activated 신호를보고 있습니다. 문제는 행 활성화를 트리거하려면 먼저 행 (트리거 cursor-changed)을 클릭 한 다음 두 번 클릭하여 3 번의 클릭이 필요하다는 것입니다.GtkTreeView의 행 활성화 및 커서 변경 신호

2 번의 클릭으로 두 신호에 모두 응답하는 방법이 있습니까?

답변

4

달성하려는 목표가 명확하지 않습니다. 난 당신이 트리 뷰에서 선택을 변경하는 사용자에게 응답하려는 것 같아요. 이 경우

gtk.TreeSelection[changed][1] 신호에 연결 :

selection = treeview.get_selection() 
selection.connect('changed', self.on_treeview_selection_changed) 

를 지금까지 내가 말할 수있는, 이것은 빈터 인터페이스 디자이너를 사용 할 수 없습니다.

그러나 완전히 다른 작업을 수행하려는 경우 몇 가지 추가 정보를 입력하십시오.

+0

Glade에서이 신호를 연결하는 방법이 있습니까? – umpirsky

2

cursor-changed 동일한 (선택한) 행을 한 번 클릭해도 신호가 방출됩니다. 더블 클릭 이전에 선택되었는지 여부에 관계없이 행을 더블 클릭하면 row-activated 신호가 방출됩니다. 따라서 row-activated을 발생 시키려면 3 번 클릭하지 않아도됩니다.

Jon이 언급했듯이 cursor-changed 대신에 선택 신호 인 changed에 연결하려고합니다.