Вы забыли установить entry
как атрибут в self
, а также не получили к нему доступ из self
.Кроме того, вы определяете self.run
, а также метод def run(..)
, что приведет к тому, что метод для экземпляра будет перезаписан.Таким образом, вы должны переименовать его во что-то еще, например _run
.
import tkinter as tk
class MyGUI:
def __init__(self, master):
<b>self.</b>entry = tk.Entry(master)
<b>self.</b>entry.pack()
self.<b>_run</b> = tk.Button(master, text="Run", command=self.run)
self.<b>_run</b>.pack()
def run(self):
print('Entry content is:', <b>self.</b>entry.get())
root = tk.Tk()
my_gui = MyGUI(root)
root.mainloop()