Foros del Web » Programando para Internet » Python »

type Error

Estas en el tema de type Error en el foro de Python en Foros del Web. Estoy tratando de solucionar esto desde anoche y estoy trabado. Trabajo con WxPython Tengo una lista con controles (self.Controles) dentro de una clase. Al abrirse ...
  #1 (permalink)  
Antiguo 30/12/2010, 07:58
 
Fecha de Ingreso: abril-2008
Mensajes: 68
Antigüedad: 16 años, 7 meses
Puntos: 0
type Error

Estoy tratando de solucionar esto desde anoche y estoy trabado.
Trabajo con WxPython

Tengo una lista con controles (self.Controles) dentro de una clase.

Al abrirse el formulario se llama a la funcion OnCancelar de esa clase:

Código:
def OnCancelar(self, event):
        self.toolbar.EnableTool(1,True)
        self.toolbar.EnableTool(2,self.ItemSelect)
        self.toolbar.EnableTool(3,False)
        self.toolbar.EnableTool(4,False)
        self.toolbar.EnableTool(5,self.ItemSelect)
        
        if self.choose:
            self.toolbar.EnableTool(6,self.ItemSelect)
        if self.list:
            self.toolbar.EnableTool(7,self.ItemSelect)
        if self.filt:
            self.toolbar.EnableTool(8,self.ItemSelect)
        if self.search:
            self.search.Enable(True)
        
        
        for c in self.Controles:
            c.SetValue = "" ---> Linea que si elimino desaparece el problema
            c.Enable(False) 
                                  
        for c in self.BControles:
            c.Enable(True)

        self.Item_Selected(False)
        if len(self.BControles) >0: self.BControles[0].SetFocus()
Cuando se seleciona un elemento de un ListCtrl se usa esta funcion:

Código:
 def LoadInfo(self,evt):
        id = evt.GetMyVal()
        self.afiliado.Load(id)
        self.page1.norden.SetValue(self.afiliado.id)
...
El error es el siguiente:

Código:
Traceback (most recent call last):
  File "/home/mariano/workspace/MUTUAL/src/form/frm_Afiliados.py", line 66, in LoadInfo
    self.page1.norden.SetValue(self.afiliado.id)
TypeError: 'str' object is not callable
self.page1.norden es un control no es str.
self.afiliado.id es str

y al comentar o borrar la linea c.SetValue = "", no me tira mas el error pero el programa pierde su funcion de eliminar los textos de los controles cuando aprietan el boton cancelar.

La verdad estoy estancado.

Gracias
  #2 (permalink)  
Antiguo 30/12/2010, 13:08
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: type Error

El problema es que en esa línea estás teniendo un error simple, pero que no lo ves porque no lo estás buscando

Al hacer
Código Python:
Ver original
  1. c.SetValue = ""
estás diciendo "el atributo SetValue del objeto c es la cadena vacía", ¡por lo que SetValue deja de ser un método de c!
Luego intentás llamar a la función, pero la función ya no existe, por eso se produce el error. Creo que lo que deberías hacer es
Código Python:
Ver original
  1. c.SetValue("")

Saludos.
  #3 (permalink)  
Antiguo 01/01/2011, 16:51
 
Fecha de Ingreso: abril-2008
Mensajes: 68
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: type Error

Gracias Alvaro..... que distraido que soy.

Saludos

Etiquetas: type
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:12.