# model import socket class Model(object): def __init__(self): self.s = socket.socket() self.s.connect(('127.0.0.1',12345)) def __del__(self): self.s.close() # view from tkinter import * class View(Tk): def __init__(self,cbEin,cbAus,cbHalt): Tk.__init__(self) # Callbacks self.cbEin = cbEin self.cbAus = cbAus self.protocol("WM_DELETE_WINDOW",cbHalt) # cbHalt wird aufgerufen, wenn das 'X' gedrückt wird # Fenster self.title("Sender") self.geometry('200x100+100+200') # Button self.bTaster = Button(master=self, text="Taster") self.bTaster.bind('',self.cbEin) self.bTaster.bind('',self.cbAus) self.bTaster.place(x=70,y=35) # controller class Controller(object): def __init__(self): self.model = Model() self.view = View(self.schalteEin,self.schalteAus,self.Halt) self.view.mainloop() def schalteEin(self,event): print('ein') self.model.s.send(bytes([255])) def schalteAus(self,event): print('aus') self.model.s.send(bytes([0])) def Halt(self): # Aufräumarbeiten self.model.s.close() # Schnittstelle schließen self.view.quit() # mainloop beenden self.view.destroy() # Fenster beseitigen # Hauptprogramm c = Controller()