Error con grid en wxpython

Mario Lacunza mlacunza en gmail.com
Mar Jul 31 22:31:41 CEST 2007


Hola,

la ejecucion de tu programa se detiene?

Me parece q el widget no soporta cierta funcion q estas utilizando o tiene
un conflicto, te lo da en otro OS?


2007/7/31, Ariel Nardelli <pan_python en yahoo.com.ar>:
>
> Hola!
>
> Estoy teniendo un problema con un grid, en un programa de python.
>
> Les pongo aca las partes relevantes del programa...
>
>
> #!/usr/bin/env python
> # -*- coding: ISO-8859-1 -*-
>
> #
> # Emision de Facturas
> #
> import wx
> import wx.grid
> from sql import *
> from fechas import *
> from forpag import *  # Tabla Forma de pago
> import letras
>
> class p2111(wx.MDIChildFrame):
>    def __init__(self, pmios, *args, **kwds):
>        self.pmios = pmios[:]
>
> ...
>
>        # Grid items de Facturas.
>        self.static_line_2 = wx.StaticLine(self, -1)
>        self.static_line_7 = wx.StaticLine(self, -1, style=wx.LI_VERTICAL)
>        self.grid = wx.grid.Grid(self, -1, size=(1, 1))
>        self.static_line_8 = wx.StaticLine(self, -1, style=wx.LI_VERTICAL)
>
>        self.__set_properties()
>        self.__do_layout()
>
>        # Eventos del Grid de "Items de Facturas"
>        self.Bind(wx.grid.EVT_GRID_CMD_CELL_CHANGE, self.gridmodlinea,
> self.grid)
>
>    def __set_properties(self):
>        self.SetTitle("Emision Facturas")
>        _icon = wx.EmptyIcon()
>        _icon.CopyFromBitmap(wx.Bitmap("iconos/ft.ico", wx.BITMAP_TYPE_ANY
> ))
>        self.SetIcon(_icon)
>
> ...
>
>        # Grid Items de Facturas.
>        self.grid.CreateGrid(16, 2)
>        self.grid.EnableEditing(1)
>        self.grid.SetRowLabelSize(0)
>        self.grid.SetColLabelSize(20)
>        self.grid.EnableDragColSize(0)
>        self.grid.EnableDragRowSize(0)
>        self.grid.SetGridLineColour(wx.Colour(192, 192, 192))
>        self.grid.SetSelectionMode(wx.grid.Grid.wxGridSelectRows)
>        self.grid.SetFont(wx.Font(self.let[6][2], wx.TELETYPE,
> wx.NORMAL, self.let[6][3], 0, self.let[6][1]))
>        self.grid.SetColLabelValue(0, "Descripcion")
>        self.grid.SetColLabelValue(1, "Importe")
>        self.grid.SetColSize(0, 455)
>        self.grid.SetColSize(1, 95)
>        self.grid.SetDefaultRowSize(self.let[5][4])
>        self.grid.SetDefaultCellFont(wx.Font(self.let[6][2],
> wx.TELETYPE, wx.NORMAL, self.let[6][3], 0, self.let[6][1]))
>
>
>    def __do_layout(self):
> ...
>        grid_sizer_5.Add(self.grid, 1,
> wx.EXPAND|wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL, 0)
> ...
>        self.SetAutoLayout(True)
>        self.SetSizer(grid_sizer_1)
>        grid_sizer_1.Fit(self)
>        grid_sizer_1.SetSizeHints(self)
>        self.Layout()
>
>
>
> #############################################################################
>    # Eventos de Grid
>    def gridmodlinea(self, event): # Modifica alguna linea del grid.
>        for k in range(0,16):
>            # Verifico que ninguno de los elementos del grid tenga un
> largo mayor a 4.
>            if  len(self.grid.GetCellValue(k,0)) > 4 : # (Descripcion)
> Mayor al largo permitido.
>                mensa = "El renglon " + str(k+1) + " tiene un largo
> mayor al permitido. Por favor achique esa linea.\nGracias"
>                self.cartelitos("Atencion",mensa)
>                wx.SetCursor(wx.STANDARD_CURSOR)
>                self.pasafoco('grid')
>                return
>        event.Skip()
>
> Ok hasta aca el programa o mejor dicho partes del programa :)
>
> El problema se me presenta cuando me posiciono en el evento de grid y
> empiezo a escribir algo, automaticamente al hacerlo me aparece esto en
> la linea de comandos donde estoy ejecutando el programa...
>
> (python:3956): Gtk-CRITICAL **: gtk_container_remove: assertion
> `GTK_IS_TOOLBAR (container) || widget->parent == GTK_WIDGET (container)'
> failed
>
> (python:3956): Gtk-CRITICAL **: gtk_container_remove: assertion
> `GTK_IS_TOOLBAR (container) || widget->parent == GTK_WIDGET (container)'
> failed
>
>
> La pregunta es.. esto es normal???, que estoy haciendo mal o que me
> falta?????
>
> Gracias!!!!
> Ariel
>
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es
>



-- 
Saludos / Best regards

Mario Lacunza
Desarrollador de Sistemas - Webmaster
Desarrollador 2 Estrellas  VS2005

Email: mlacunza [AT] gmail [DOT] com
Website: mlacunzav[DOT]cogia[DOT]net
Blog: http://mlacunza.blogspot.com/
Lima - Peru




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