Как мне узнать, нажал ли я на кнопку? - PullRequest
0 голосов
/ 17 апреля 2019
from Tkinter import *
window = Tk()
window.config(background="green")
window.bind("<Escape>", quit)
cbttn = Checkbutton(text="Caps?").grid(row=3, column=0)

Работает ли для него if cbttn = True?Или мне нужно переместить функцию .grid() и переместить ее на следующую строку кода.

1 Ответ

1 голос
/ 17 апреля 2019

Назначение, такое как:

cbttn = Checkbutton(text="Caps?").grid(row=3, column=0)

дает в cbttn объект типа Нет .

Либо удалите назначениев cbttn (если вы не хотите ссылаться на него далее в сценарии)

Checkbutton(text="Caps?").grid(row=3, column=0)

или переместите сетку на новую строку как:

cbttn = Checkbutton(text="Caps?")
cbttn.grid(row=3, column=0)

И посмотрите, была ли кнопка CheckButtonнажата или нет, используйте доступную опцию command .Проверьте пример здесь .Взяв этот пример:

from tkinter import *

def display():
    print(CheckVar1.get())

top = Tk()
CheckVar1 = IntVar()
CheckVar2 = IntVar()
C1 = Checkbutton(top, text = "Music", variable = CheckVar1, \
                 onvalue = 1, offvalue = 0, height=5, \
                 width = 20, command = display)
C2 = Checkbutton(top, text = "Video", variable = CheckVar2, \
                 onvalue = 1, offvalue = 0, height=5, \
                 width = 20)
C1.pack()
C2.pack()
top.mainloop()

Выход должен продолжать переключаться между 0 и 1

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...