Python - Consulta pyqt

 
Vista:
sin imagen de perfil

Consulta pyqt

Publicado por Cristhian (17 intervenciones) el 06/05/2014 02:42:16
Hola, hace un tiempo no pasaba por aqui pero sigo experimentando con python + Qt y estoy teniendo un inconveniente espero alguien me pueda ayudar.

Tenfo un QlineEdit dentro de un layout en un formulario, el mismo se encuenta con la propiedad enabled a falso por defecto, tengo un boton "nuevo" el cual deberia habilitar este lineedit con setEnabled pero al momento de clickear me tira un mensaje de error y no se en que me estoy equivocando. Espero alguien me pueda dar una mano.

Desde ya muchas gracias

1
2
3
4
5
6
7
8
9
10
class frmclientes(QtGui.QWidget):
    def __init__(self):
        QtGui.QWidget.__init__(self)
        self.ventana_cliente = Ui_frmclientes()
        self.ventana_cliente.setupUi(self)
 
        self.connect(self.ventana_cliente.nuevo, QtCore.SIGNAL('clicked()'),self.habilitar)
 
    def habilitar(self):
	self.txtapellido.setEnabled(True)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 2.239
Plata
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Consulta pyqt

Publicado por xve (1646 intervenciones) el 06/05/2014 11:34:51
Hola Christian, te agradezco que hayas adjuntado tu código, me ha ido bien para detectar donde tienes el error...

Actualmente tu tienes este código en el archivo que nos has adjuntado:
1
2
3
4
5
6
7
8
9
10
class frmclientes(QtGui.QWidget):
    def __init__(self):
        QtGui.QWidget.__init__(self)
        self.ventana_cliente = Ui_frmclientes()
        self.ventana_cliente.setupUi(self)
 
        self.connect(self.ventana_cliente.nuevo, QtCore.SIGNAL('clicked()'),self.habilitar)
 
    def habilitar(self):
        self.clientes.txtapellido.setEnabled(True)

El error, te lo da en la ultima linea (self.clientes.txtapellido.setEnabled(True))... si te fijas, en esta clase, no existe clientes... simplemente tienes que cambiar clientes por ventana_cliente, quedando así:
1
self.ventana_cliente.txtapellido.setEnabled(True)

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consulta pyqt

Publicado por Cristhian (17 intervenciones) el 07/05/2014 01:06:27
Perfecto!!! muchas gracias por la correccion, son cosas tontas pero como recien estoy empezando con este lenguaje me trae a los golpes.
Por otro lado estuve probando otras cosas el día de hoy y me encontre con otro problema que me llevo gran parte del día en ese mismo formulario como veras tengo un boton cerrar cuya función es cerrar el formulario actual, el cual envia una señal y la deberia recibir el formulario, probe de la siguiente manera

self.connect(self.ventana_cliente.cerrar, QtCore.SIGNAL('clicked()'),QtCore.SLOT('close()'))

pero solo me hace desaparecer todos los controles del formulario pero no el formulario, y tambien probe de la siguiente manera pero me devuelve un error

self.connect(self.ventana_cliente.cerrar, QtCore.SIGNAL('clicked()'),QtCore.SLOT(self.ventana_cliente('close()')))

Disculpen que este tan pregunton pero es da la unica forma que estoy entendiendo esta combinacion de lenguaje ya que mi ingles es bastante escaso.

Saludos y muchas gracias por toda la ayuda brindada
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar