Как заставить кнопку tkinter работать перед выполнением команды - PullRequest
0 голосов
/ 20 февраля 2019

Я пытаюсь сделать кнопку, чтобы проверить ответ, но кнопка не работает.

Это мой код:

from tkinter import *
from tkinter import messagebox

question = '1+1=?'
key = '2'

def makeform(root, question):
   row = Frame(root)
   lab = Label(row, width=15, text=question, anchor='w')
   ent = Entry(row)
   row.pack(side=TOP, fill=X, padx=5, pady=5)
   lab.pack(side=LEFT)
   ent.pack(side=RIGHT, expand=YES, fill=X)
   entries = (question, ent)
   return entries

def check(entry, key):
    text = entry[1].get()
    if(text == key):
        messagebox.showinfo("Congratulation", "Great Job!")
    else:
        messagebox.showinfo("Uh Oh!", "Sorry, you're wrong.")

root = Tk()
ents = makeform(root, question)
b1 = Button(root,
            text='Finish',
            command= (lambda : check(ents, key), root.destroy))
b1.pack(side=LEFT, padx=5, pady=5)
root.mainloop()

Это правильно выскакивает окно, но когда я нажимаюкнопка, это ничего не делает.

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