Veja aqui: link
Você pode obter a seleção em um evento conectando um objeto de seleção a um evento:
select = tree.get_selection()
select.connect("changed", on_tree_selection_changed)
def on_tree_selection_changed(selection):
model, treeiter = selection.get_selected()
if treeiter != None:
print "You selected", model[treeiter][0]
Editar: Para configurar isso em uma classe de janela, use o seguinte código:
class MyTreeView....
....Other Stuff...
self.treeview = self.builder.get_object("treeview")
select = self.treeview.get_selection()
select.connect("changed", self.on_tree_selection_changed)
def on_tree_selection_changed(self, selection):
model, treeiter = selection.get_selected()
if treeiter != None:
print "You selected", model[treeiter][0]
Editar2: Se você quiser ter várias linhas selecionadas, precisará usar Gtk.TreeSelection.get_selected_rows()
, que retorna uma lista de Gtk.TreePath
instâncias de todas as linhas selecionadas.