如何将套接字添加到listWidget
How to add socket into listWidget
我需要帮助将 python 的套接字对象添加到 PyQt5 listWidget。
首先,我在线程服务器
中做这件事
client, addr = self.s.accept()
self.clients.append(client)
然后在 QTclass
我正在尝试做这些事情
class win(QtWidgets.QMainWindow):
def __init__(self, parent=None):
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
self.server = Server()
self.timer = QTimer()
self.timer.timeout.connect(self.update)
def clUpdate(self):
self.ui.ListWidget.addItems(self.server.clients)
但是当客户端连接到服务器时我遇到了这个异常
TypeError: index 0 has type 'socket' but 'str' is expected
那么如何将套接字添加到 listWidget?我想稍后使用它,例如,从 listWidget
向特定客户端发送消息
我试过听写,现在可以正常使用了
服务器
client, addr = self.s.accept()
self.clients[str(client)] = client
QT
class win(QtWidgets.QMainWindow):
def __init__(self, parent=None):
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
self.server = Server()
self.timer = QTimer()
self.timer.timeout.connect(self.update)
def update(self):
itemsTextList = [str(self.ui.listWidget.item(i).text())for i in range(self.ui.listWidget.count())]
for key in self.server.clients:
if key not in itemsTextList:
self.ui.listWidget.addItem(key)
我需要帮助将 python 的套接字对象添加到 PyQt5 listWidget。 首先,我在线程服务器
中做这件事client, addr = self.s.accept()
self.clients.append(client)
然后在 QTclass
我正在尝试做这些事情
class win(QtWidgets.QMainWindow):
def __init__(self, parent=None):
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
self.server = Server()
self.timer = QTimer()
self.timer.timeout.connect(self.update)
def clUpdate(self):
self.ui.ListWidget.addItems(self.server.clients)
但是当客户端连接到服务器时我遇到了这个异常
TypeError: index 0 has type 'socket' but 'str' is expected
那么如何将套接字添加到 listWidget?我想稍后使用它,例如,从 listWidget
向特定客户端发送消息我试过听写,现在可以正常使用了
服务器
client, addr = self.s.accept()
self.clients[str(client)] = client
QT
class win(QtWidgets.QMainWindow):
def __init__(self, parent=None):
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
self.server = Server()
self.timer = QTimer()
self.timer.timeout.connect(self.update)
def update(self):
itemsTextList = [str(self.ui.listWidget.item(i).text())for i in range(self.ui.listWidget.count())]
for key in self.server.clients:
if key not in itemsTextList:
self.ui.listWidget.addItem(key)