Chierush 2013-09-28 15:16 采纳率: 0%
浏览 1703

求助:写了个简单的python通信窗口,为什么刚运行一会就会崩掉呢?

代码如下,不知道为什么会崩,在线等大神解答:

# -*- coding:utf-8 -*-
# file : server.py

from PyQt4 import QtGui, QtCore
import sys
import socket
import threading

class Window(QtGui.QWidget):
    def __init__(self):
        QtGui.QWidget.__init__(self)
        self.setWindowTitle('Server')
        self.edit = QtGui.QTextEdit()
        self.grid = QtGui.QGridLayout()
        self.button = QtGui.QPushButton('Start Listening')
        self.connect(self.button, QtCore.SIGNAL('clicked()'), self.Send)
        self.grid.addWidget(self.button, 0, 0)
        self.grid.addWidget(self.edit, 1, 0)
        self.setLayout(self.grid)

    def Send(self):
        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        sock.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1) 
        sock.bind(('', 8033))
        sock.listen(5)
        while True:
            try:
                server, addr = sock.accept()
                data = server.recv(1024)
                self.edit.append(data)
                server.send('I got ' + data)
                server.close()
            except:
                self.edit.append('Cut Down')
                break
        sock.close()

app = QtGui.QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec_())
  • 写回答

1条回答

  • 流浪喵 2016-08-22 15:21
    关注

    if name=="__main__":
    app = QtGui.QApplication(sys.argv)
    window = Window()
    window.show()
    sys.exit(app.exec_())
    试一下这样写

    评论

报告相同问题?

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?