[Python-es] Un poco de ayuda con las señales de PyQt

Sergio Martín sergiomartinj en gmail.com
Mie Jul 28 03:37:09 CEST 2010


Estoy realizando un proyecto en el cual necesito un 'chat' para comunicación entre usuarios, antes de implementar ese 'chat' en la aplicación debido a que acabo de empezar mi aprendizaje con PyQt, he decidido hacer una miniaplicación de pruebas.
Por ahora me conformo con un widget muy simple que contenga una linea editable para meter el mensaje (por medio de la tecla INTRO), y una caja de texto donde se vayan escribiendo todos los mensajes que escribo desde esa línea (todavía no necesito nada de redes ni de distintos usuarios). Ahí os paso el código que tengo por ahora a ver si alguien me puede decir en que fallo, porque no consigo mostrar el mensaje de la QLineEdit en la caja de texto (Supongo que el error estará en el envío de la 'SIGNAL'):

import sys
from PyQt4 import QtGui
from PyQt4 import QtCore

class Naipes(QtGui.QWidget):
    def __init__(self, parent=None):
        QtGui.QWidget.__init__(self, parent)
        
        self.setWindowTitle('Naipes')
        self.resize(640, 480)
        self.centrado()
        
        mensajes = QtGui.QTextBrowser(self)
        mensajes.setGeometry(10, 10, 431, 431)
        
        nuevo_mensaje = QtGui.QLineEdit(self)
        nuevo_mensaje.setGeometry(10, 450, 621, 22)
        
        self.connect(nuevo_mensaje, QtCore.SIGNAL('returnPressed()'), mensajes, QtCore.SLOT('append(nuevo_mensaje.text())'))
    
    def centrado(self):
        screen = QtGui.QDesktopWidget().screenGeometry()
        size = self.geometry()
        self.move((screen.width() - size.width()) / 2, (screen.height() - size.height()) / 2)

app = QtGui.QApplication(sys.argv)
naipes = Naipes()
naipes.show()
sys.exit(app.exec_())


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