使用Tkinter GUI进行python套接字编程

时间:2015-12-13 20:47:54

标签: python-2.7 sockets tkinter

我正在尝试使用服务器和客户端连接制作游戏,到目前为止,我一直在玩连接并在两者之间发送列表和字符串。这个天堂太难理解,但现在我想为服务器和客户端使用Tkinter GUI。

当我按下按钮,说客户端GUI时,我希望在两个窗口中显示相同的操作。因此,如果我按下按钮并在GUI上打印出文本,我希望在其他GUI上打印相同的文本,我该怎么做?我不认为发送 mainloop()内的信息会有什么问题,但我怎样才能收到信息?

如果有人花时间为我解释这一点会很棒,我一直在Google上搜索,但我找不到任何我能理解的内容。我真的很喜欢编程,所以如果他们没有很好的评论,我在网上的大多数代码都太难理解了。

1 个答案:

答案 0 :(得分:0)

Twisted是一个高级框架,可以相对轻松地创建网络应用程序。一个简单的tcp echo服务器可以分几行:

from twisted.internet import protocol, reactor, endpoints

class Echo(protocol.Protocol):
    def dataReceived(self, data):
        self.transport.write(data)

class EchoFactory(protocol.Factory):
    def buildProtocol(self, addr):
        return Echo()

endpoints.serverFromString(reactor, "tcp:1234").listen(EchoFactory())
reactor.run()

它还与tkinter事件循环很好地集成(参见this示例)。您应该能够合并这两个示例来创建所需的代码。