Stare pytanie, ale większość odpowiedzi sugerowała zmienną globalną. Nie lubię używać zbyt wielu zmiennych globalnych w moich projektach, więc oto moje rozwiązanie.
Podczas zadeklarowania przycisku Tkinter można użyć funkcji lambda jako polecenia. Ta lambda może wchodzić w interakcje ze zmiennymi, które znajdują się w tej samej przestrzeni nazw co przycisk, który definiujesz. Pamiętaj o zdefiniowaniu tej zmiennej przed zainicjowaniem przycisku.
def button():
mylabel = Label(myGui, text = "hi").grid(row = 0, column = 0)
A = B.get()
return A
B = StringVar()
C = ""
myentry = Entry(myGui, textvariable = B).grid(row = 1, column = 0)
Submit = Button(myGui, text = "Submit", command = lambda: C=button()).grid(row = 1, column = 1)
może trzeba mieć self
jako argument dla button
W zależności od organizacji projektu, ale idea jest taka sama. Polecenia Lambda są również przydatne do przekazywania argumentów do polecenia przycisku.