[pyar] error desde una clase que llama a otra
Fernando Gonzalez
fagonzalez en steel.com.ar
Lun Mayo 28 16:11:13 ART 2012
Hola a todos, estoy haciendo las primeras pruebas con python, y hasta
aca todo bien, cuando quiero profundizar un poco, me salen algunas dudas
por los mensajes q me tiran
aca les muestro un trozo de código que escribí
import sys
from PyQt4 import QtCore
from PyQt4 import QtGui
import fichacli
import buscarcli
class BuscarYReemplazar(QtGui.QDialog, fichacli.Ui_fichacliente):
def __init__(self, parent=None):
super(BuscarYReemplazar, self).__init__(parent)
#self.__text = unicode(text)
self.__index = 0
self.setupUi(self)
self.updateUI()
def updateUI(self):
self.connect(self.cmdBusca, QtCore.SIGNAL("clicked()"),
self.BuscarCliente)
def BuscarCliente(self):
cBusq = buscarcli.BuscarCliente()
cBusq.connect(cBusq, QtCore.SIGNAL("DatoValido"), self.datoValido)
cBusq.show()
en buscarcli tengo un botón y el siguiente código
import sys
from PyQt4 import QtCore
from PyQt4 import QtGui
import buscar
class BuscarCliente(QtGui.QDialog, buscar.Ui_Buscar):
nombre = "DATO VALIDO"
nodato = "CANCELO"
def __init__(self, parent=None):
super(BuscarCliente, self).__init__(parent)
self.setupUi(self)
self.updateUI()
def updateUI(self):
#conecto los botones con los procedimientos que disparan los
eventos
self.connect(self.cmdOk,
QtCore.SIGNAL("clicked()"),self.DatoValido())
self.connect(self.cmdCancela,QtCore.SIGNAL("clicked()"),self.Cancela())
#disparo los eventos
def DatoValido(self):
#self.emit(QtCore.SIGNAL("DatoValido"),self.nombre)
print "OK"
def Cancela(self):
self.emit(QtCore.SIGNAL("Cancela"),self.nodato)
y cuando hago click de cmdBuscar de BuscarYReemplazar me tira lo
siguiente por la consola:
C:\PYTHON\QT\proyecto MDI1>cliente.py
OK
Traceback (most recent call last):
File "C:\PYTHON\QT\proyecto MDI1\cliente.py", line 34, in BuscarCliente
cBusq = buscarcli.BuscarCliente()
File "C:\PYTHON\QT\proyecto MDI1\buscarcli.py", line 24, in __init__
self.updateUI()
File "C:\PYTHON\QT\proyecto MDI1\buscarcli.py", line 28, in updateUI
self.connect(self.cmdOk, QtCore.SIGNAL("clicked()"),self.DatoValido())
TypeError: arguments did not match any overloaded call:
QObject.connect(QObject, SIGNAL(), QObject, SLOT(),
Qt.ConnectionType=Qt.AutoC
onnection): argument 3 has unexpected type 'NoneType'
QObject.connect(QObject, SIGNAL(), callable,
Qt.ConnectionType=Qt.AutoConnecti
on): argument 3 has unexpected type 'NoneType'
QObject.connect(QObject, SIGNAL(), SLOT(),
Qt.ConnectionType=Qt.AutoConnection
): argument 3 has unexpected type 'NoneType'
C:\PYTHON\QT\proyecto MDI1>
Por lo que entiendo, me dice q falta un argumento en SIGNAL(), pero
clicked() no tiene argumento, o si, alguien se da una idea cual es el error
desde ya gracias
Fer
PD: Tanto fichacli como buscar esta importadas desde QtDesigner con el
pyuic4.exe
More information about the pyar
mailing list