Una TreeViewColumn se crea
usando el constructor:
treeviewcolumn = gtk.TreeViewColumn(title=None,cell_renderer=None,...)
donde title es la cadena que será usada como
etiqueta en el encabezado de la columna, y cell_renderer es
el primer CellRenderer que se empaqueta en la columna. Los
argumentos adicionales que establecen los atributos de
cell_renderer se pasan al constructor como valores con
nombre (en el formato atributo=columna). Por ejemplo:
treeviewcolumn = gtk.TreeViewColumn('States', cell, text=0, foreground=1)
crea una TreeViewColumn en el que el
CellRendererText llamado cell obtiene su texto de la primera
columna del modelo de árbol y el color del texto de la segunda columna.
Se puede añadir un CellRenderer (intérprete de celda)
a una TreeViewColumn usando uno de los siguientes métodos:
treeviewcolumn.pack_start(cell,expand) treeviewcolumn.pack_end(cell,expand)
pack_start() y
pack_end() añaden cell al principio
o final, respectivamente, de la TreeViewColumn. Si
expand es TRUE,
cell compartirá el espacio disponible extra que haya reservado la
TreeViewColumn.
El método get_cell_renderers() :
cell_list = treeviewcolumn.get_cell_renderers()
devuelve una lista de todos los CellRenderers
de una columna.
El método clear() elimina todos los
atributos de CellRenderer de la columna
TreeViewColumn:
treeviewcolumn.clear()
Hay muchos otros métodos disponibles para una
TreeViewColumn (y la mayoría tienen que ver con el establecimiento y obtención de propiedades. Véase el Manual de Referencia de PyGTK para obtener más información sobre las propiedades de
TreeViewColumn. La capacidad de usar la característica incluida de
ordenación se determina con el método:
treeviewcolumn.set_sort_column_id(sort_column_id)
que establece sort_column_id como el identificador (ID) de
columna de ordenación del modelo de árbol que se usará cuando se ordene la vista del
TreeView. Este método también establece la propiedad
"clickable" de la columna, lo que permite al usuario hacer click sobre en encabezado de la
columna para activar la ordenación. Cuando se hace click en el encabezado de la columna
el identificador (ID) de columna de ordenación de la TreeViewColumn
se establece como identificador de columna de ordenación del
TreeModel y las filas del TreeModel
son reordenadas utilizando la función de comparación asociada. La herramienta de
ordenación automática también conmuta el orden de clasificación de la columna y gestiona
la visualización del indicador de orden. Véase la sección
Ordenación de las filas de un Modelo de árbol
para obtener más información sobre los identificadores de columna de ordenación y funciones de comparación. Habitualmente, cuando se usa un ListStore o
TreeStore el identificador de columna de ordenación por defecto
(el índice de la columna) de la columna del TreeModel asociada con
la TreeViewColumn se establece como el identificador de columna
de ordenación de la TreeViewColumn.
Si se usan los encabezados de las TreeViewColumns
para hacer la ordenación, entonces si se utiliza el método
set_sort_column_id() no es necesario utilizar el método
TreeSortableset_sort_column_id()
.
Se pueden rastrear las operaciones de ordenación o utilizar el click sobre los
encabezados para propósitos específicos conectándose a la señal "clicked" de la columna
de un TreeView. La función de retrollamada debería definirse
así:
def callback(treeviewcolumn, user_data, ...)