我正在尝试使用 Button Press 和 Relase 事件调用 2 个函数。当我在没有这些事件的情况下(直接在我的代码中)调用相同的函数时,它们没有提供所需的输出。
当我单击“连接按钮”时:
- On Button Press Event -> Call Function connect (这将在客户端和服务器之间创建连接)
- On Button Release Event -> 调用函数发送详细信息(将数据从客户端发送到服务器)
当我使用打印命令检查程序流程时,我发现这connection.transport.write(data)
是造成问题。
def on_connectCLB_pressed(self):
Connect()
def on_connectCLB_released(self):
Send_Details()
def Send_Details():
print "Send_Details"
global connection,chat
contents="contents"
if (USER!=''):
stat="Available"
data="user_details>>:"+USER +">>:"+stat+">>:"+contents
connection.transport.write(data)
else:
GUI.setStatusTip(QtGui.QApplication.translate("MainWindows", 'Enter your username.', None, QtGui.QApplication.UnicodeUTF8))
def Connect():
print "Connect"
global connection
connection=reactor.connectTCP(HOST,int(PORT) , EchoClientFactory()) ##listenTCP and connectTCP,to set defaults for all connections coming from that accept() or connect()