Problemas con gtk.TreeView

Juan Carlos Juarez Lerma isc.jcjl en gmail.com
Jue Oct 27 02:45:19 CEST 2005


Hola que tal, un saludo a todos.

Tengo un problema al usar el gtk.TreeView, ya que al momento de cargar y
modelo no me muestra ningun dato, solo los titulos de las columnas, he
inclusive al momento de cargar mi modelo me puedo dar cuenta que el numero
de filas que se agregan al TreeView corresponden al numero de registros de
mi consulta, ya he visto varios sitios en donde explican el uso de este
widget pero aun asi no logro que muestre mis datos, les dejo mi codigo,
espero que puedan ayudarme. De antemano muchas Gracias

import pygtk
pygtk.require('2.0')
import gtk
import gtk.glade
import MySQLdb

#txtidAlumno = None
class cargar_aplicacion:
#global txtidAlumno
def __init__(self):
#Cargar la interface grafica desde el archivo de Glade
self.ventana=gtk.glade.XML('estado_de_cuenta.glade')
self.ventana.signal_autoconnect(self)
self.btnCerrar = self.ventana.get_widget('btnCerrar')
self.btnConsultar=self.ventana.get_widget('btnConsultar')
self.txtidAlumno=self.ventana.get_widget('entry1')
self.vista=self.ventana.get_widget('vista')
#Crear el modelo para el gtkTreeView

#Preparar el gtkTreeView


#Conectar a la Base de Datos
self.base = MySQLdb.connect(host="192.168.0.1 <http://192.168.0.1>
",user="usuario",passwd="---",
db="cecobe")
self.cursor=self.base.cursor()

def agregar_columnas(self):
self.tvcolumn = gtk.TreeViewColumn("pagado",gtk.CellRendererText())
self.tvcolumn1 = gtk.TreeViewColumn('importe',gtk.CellRendererText())
self.tvcolumn2 = gtk.TreeViewColumn('referencia',gtk.CellRendererText())
self.vista.append_column(self.tvcolumn)
self.vista.append_column(self.tvcolumn1)
self.vista.append_column(self.tvcolumn2)



def on_btnCerrar_clicked(self,widget, *args):
gtk.main_quit()

def on_window_destroy(self,widget, *args):
gtk.main_quit()

def on_btnConsultar_clicked(self,widget, *args):
self.store = self.liststore = gtk.ListStore(int,int,str)
matricula= self.txtidAlumno.get_text()
SQL = "SELECT pagado,cve_cargo,referencia FROM apf_relalumcargo WHERE
cve_alumno=" + matricula
self.cursor.execute(SQL)
result = self.cursor.fetchall()
for fila in result:
items=([fila[0],fila[1],fila[2]])
self.store.append(items)
print fila[0] ,"-->",fila[1] ,"-->",fila[2]
self.cursor.close()
self.vista.set_model(self.liststore)
self.agregar_columnas()

if __name__=="__main__":
aplicacion=cargar_aplicacion()
gtk.main()




Más información sobre la lista de distribución Python-es