Доступ к тексту в кнопке tkinter для хранения в качестве переменной - PullRequest
0 голосов
/ 20 января 2019

Я пытаюсь создать 2D-игру с помощью tkinter (очень просто), и у меня небольшая проблема с кнопками.

Я использовал следующий код для создания кнопки переключения, которая изменялась с Вверх на Вниз и наоборот при нажатии:

def toggleud(icycle = it.cycle(['Down', 'Up'])):

    stateud = next(icycle)
    updowntoggle['text'] = str(stateud)

updowntoggle = tk.Button(scr, text = 'Up', command = toggleud)
updowntoggle.pack()

Когда реализовано, это работает очень хорошо! Однако затем я хотел бы получить доступ к тому состоянию, в котором находится кнопка, чтобы ее можно было использовать для перемещения символа в сетке, например, если кнопка говорит «Вверх», то персонаж будет двигаться вниз и наоборот. Я старался udtogglechoice = updowntoggle['text'] но это не сработало. Любой совет?

1 Ответ

0 голосов
/ 20 января 2019

В соответствии с документами , вы можете создать переменную StringVar и получить ее значение. При изменении значения переменной кнопка обновляется.

from tkinter import StringVar
toggle_var = StringVar()
updowntoggle = tk.Button(scr, text = 'Up', textvariable=toggle_var, command = toggleud)

#to get the value
def toggleud():
#your code here
    print(toggle_var.get())
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...