嗨,希望有人能帮助我,我正在写一个小的图形用户界面,将通过UDP套接字发送的数据。我决定和PyQt的QUdpSocket一起做这件事。我使用了示例代码(我用它来测试我的服务器),然后去掉了gui。
from PyQt4 import QtNetwork
class graphUDP(QtNetwork.QUdpSocket):
def __init__(self, parent=None):
super(graphUDP, self).__init__(parent)
self.udpSocket = QtNetwork.QUdpSocket(self)
self.udpSocket.bind(8888)
self.udpSocket.readyRead.connect(self.processPendingDatagrams)
print "All ok line 20"
def processPendingDatagrams(self):
print "line 23 All ok"
while self.udpSocket.hasPendingDatagrams():
datagram, host, port = self.udpSocket.readDatagram(self.udpSocket.pendingDatagramSize())
print "All ok line 28"
print datagram
if __name__ == '__main__':
import sys
graphRun = graphUDP()
graphRun我放了一些调试行来看看发生了什么,它看起来类被实例化了,但是信号和插槽没有连接到触发函数。我已经超出了我的能力范围,绕圈子跑来跑去,有什么想法/建议吗?
谢谢
发布于 2013-02-23 18:59:55
为什么要扩展QUdpSocket,然后在构造函数中实例化一个新的QUdpSocket?这真的没有任何意义。
首先决定如何创建您的类以及如何实例化它。
除此之外,我看不出它为什么不能工作有任何问题。
另外,你在底部"main“部分的对齐方式也是错误的。通常,QT要求您在使用任何其他QT类之前创建一个QApplication。
https://stackoverflow.com/questions/15039371
复制相似问题