質問
2 つのクラスを同時に継承させる方法はありますか?
バックグラウンド
現在、Socket Server プロジェクトに取り組んでいます。このプロジェクトには、Server
クラスとクラスの 2 つのクラスがありGUI
ます。それらの目的は一目瞭然です。しかし、明らかに、2 つのクラスが相互に通信する必要があります。プログラムでは、最初にクラスを宣言し、Socket_Server
次にクラスを宣言しGUI
ます。
同様の質問How to Access Functions from Methods in Pythonを尋ねましたが、満足のいく回答は得られませんでした。どちらかで答えてみてください。
コードとエラー
クラスには、すべてのクライアントにメッセージを送信するために使用さGUI
れるというテキストボックスがあります。self.message.
この構文を使用して、このクラスを継承しようとしました。
class Socket_Server(GUI.messageFun):
次に、GUI クラスは Socket_Server から継承します -
class GUI(Frame, Socket_Server):
2 番目の継承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'