Code: Alles auswählen
self.QUIT = Tkitner.Button(self)
self.QUIT["text"] = "Herunterfahren"
self.QUIT["command"] = lambda :os.system('init 0')
Code: Alles auswählen
self.QUIT = Tkinter.Button(self, text='Herunterfahren', command=lambda :os.system('init 0'))
Tkinter will an dieser Stelle nur einen Pointer auf eine Funktion sehen und diese Funktion wird dann mit dem "Button-Click"-Event verbunden.
Schreibst du an dieser Stelle "os.system('init 0')" bindest du sozusagen nicht die Funktion an das Event sondern den Rückgabewert der Funktion. => Die Funktion wird bereits zu Beginn ausgeführt.
Bsp.:
Code: Alles auswählen
>>> def test():
... return 'Die Funktion wurde aufgerufen!'
...
>>> a = test
>>> b = test()
>>> print a
<function test at 0x00E20808>
>>> print b
Die Funktion wurde aufgerufen!
>>>
dahaze
EDIT2:
Da war ich wohl zu langsam mit meiner Erklärung!