У меня есть этот код, где я получаю древовидное представление и знак, когда я нажимаю или перемещаю вверх / вниз по строкам . Для моего приложения мне нужно отключить выбор, когда пользователь нажимает на строку, а также мне интересно, есть ли способ заблокировать выбор вверх. Спасибо
treeview = builder.get_object('treeview3')
treeview.set_model(liststore)
select = treeview.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]
Вы могли использовать Gtk.TreeSelection.set_select_function
функциональность для этого. В основном Вы даете ему функцию, каждый раз, когда строка выбрана, эта функция вызвана. Когда это возвращает False, строка не может быть выбрана.
Вот пример:
treeview = builder.get_object("treeview3")
selection = treeview.get_selection()
selection.set_select_function(_select_func, None)
def _select_func(selection, model, path, selected, data):
return False # Can't select this row