Hallo,
ich hab mal den Code soweit es geht runtergebrochen,
worum es mir geht ist, das widget: text_01 ausserhalb der init funktion
zu aendern, zum Beispiel um einen File zu laden oder den Text zu bearbeiten.
Was ich in vielen Tutorials finde ist halt das Standard-Beispiel mit der insert Funktion,
welches mir aber leider nicht so richtig hilft.
als Fehlermeldung bekomme ich zur Zeit:
Exception in Tkinter callback
Traceback (most recent call last):
File "/soft/python/2.6/lib/python2.6/lib-tk/Tkinter.py", line 1410, in __call__
return self.func(*args)
File "./class_01.py", line 10, in strip_file
self.text_01.insert(END,"test text")
AttributeError: my_application_class instance has no attribute 'text_01'
was fuer mich bedeutet, dass ich text_01 so nicht bearbeiten kann sondern
ueber irgendeine Zuweisung gehen muss?
self.text_01 = ....
aber wie setzt man das auf?
einige Varianten die alle nicht funktionieren:
self.master.text_01.insert(END,"test")
self.text_01 = self.master.insert(END,"test")
kann mir da jemand helfen, wie ich in der Funktion:
strip_file
das text widget manipulieren kann?
Code: Alles auswählen
#!/usr/bin/env python
from Tkinter import *
class my_application_class:
def strip_file(self, *args):
self.text_01.insert(END,"test text")
def __init__(self, master):
# frame_01 definition
frame_01 = Frame(master)
text_01 = Text(frame_01)
text_01.pack()
frame_01.pack()
# frame_02 definition
frame_02 = Frame(master)
button_01 = Button(frame_02,command = self.strip_file)
button_01.pack()
frame_02.pack()
root = Tk()
display = my_application_class(root)
root.mainloop()