我试图让我的tkinter顶层有一个访问密钥,然后内容可以印刷的。它不输出任何错误,但当我提供访问密钥时,它不会将内容打印到我的终端。我更改了访问密钥,但仍然无法打印数据。在
来自tkinter import*
def qw():
global en1
if en1.get() == 2e2c2v:
print("You have visa to Paris")
tp.destroy() # after printing should close the toplevel window
else:
print("you dont have access to print the data")
def login_toplevel():
global en1
tp = Toplevel()
tp.geometry("300x300")
en1 = Entry(tp)
en1.pack()
b = Button(tp, text="provide key to print", command=qw)
b.pack()
root = Tk()
root.geometry("400x400")
b = Button(root, text= "print", command=login_toplevel).pack()
root.mainloop()
将访问键更改为字符串“2e2c2v”,然后为顶层窗口声明全局变量
global en1, tp
,并为这两个函数解析它有几个问题:
其他行的缩进不好(但我认为是复制/粘贴的错误)
if en1.get() == 2e2c2v:
应该是if en1.get() == "2e2c2v":
更正后的完整代码应为:
编辑:
顺便说一句,我认为使用类而不是使用global会更好。它会给出这样的结果:
^{pr2}$好吧,从您提供的示例中(在我修复缩进之后),我得到了一个“无效语法”错误,因为您试图将
en1.get()
与尚未声明的变量2e2c2v
进行比较。在更新此行。在
。到。在
^{pr2}$在我做这件事之后,它对我起到了预期的效果。在
相关问题 更多 >
编程相关推荐