问题
有没有办法让两个类同时相互继承?
背景
我目前正在开发一个 Socket Server 项目。在这个项目中,我有两个类,一个Server
类,一个GUI
类。他们的目的是不言自明的。但是,我显然需要让这两个类相互通信。在程序中,我先声明Socket_Server
类,然后再声明GUI
类。
我问了一个类似的问题,How to Access Functions from Methods in Python,但从未得到令人满意的回答。请尝试回答。
代码和错误
在GUI
课堂上,我有一个名为self.message.
It 的文本框,用于向所有客户端发送消息。我试图通过使用这种语法来继承这个类:
class Socket_Server(GUI.messageFun):
接下来,GUI 类继承自 Socket_Server——
class GUI(Frame, Socket_Server):
第二个继承GUI(Socket_Server)
工作正常,但第一个继承失败。
按钮的命令是这样的
self.send = Button (self.messageFrame, text = "Send",
command = lambda: new_server.send_cmd())
new_server
是Socket_Server
类的一个实例。
当前的错误消息是这样的:
Socket Created
Socket Bind Complete
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Python27\lib\lib-tk\Tkinter.py", line 1410, in __call__
return self.func(*args)
File "D:\Python Programs\Sockets\IM Project\Server\Server GUI InDev Class.py", line 129, in <lambda>
command = lambda: new_server.send_cmd())
File "D:\Python Programs\Sockets\IM Project\Server\Server GUI InDev Class.py", line 82, in send_cmd
message = self.message.get("0.0",END)
AttributeError: Socket_Server instance has no attribute 'message'