En Trabajando con GtkTreeView en Python explicaba como utilizar el complejo pero versatil widget GtkTreeView. Sin embargo, faltaba un detalle importante: ¿como usar selección múltiple?
Lo primero es poner el selector del GtkTreeView en modo de selección múltiple:
treeview.get_selection().set_mode(gtk.SELECTION_MULTIPLE)
Ahora ya podremos marcar más de una fila simultáneamente usando las teclas Mayúsculas y Control.
Leer los elementos marcados es tan sencillo como obtener primero el iterador y el arbol:
tree,iter = self.z88tree.get_selection().get_selected_rows()
Si el iterador es None, no hay ninguna fila seleccionada, pero si lo está, no tenemos más que recorrer los elementos del iterador para acceder a las filas. Con ellas, podemos usar el método get_value del arbol para obtener el valor de cada una.
En este ejemplo almacenamos en la lista ret el valor de la columna cero de cada fila seleccionada:
ret = [] for item in iter: ret.append(tree.get_value(tree.get_iter(item),0))
Fácil, fácil, para toda la familia.