簡體   English   中英

tkinter窗口復選框操作

[英]tkinter window checkbox operation

我的復選框(admin_check)在切換時未在check_var中設置值。 當我刪除根窗口時,它工作正常,但由於必要而無法刪除。

def c():
    print(check_var.get())


root=Tk()
#initially it must be minimised not to be open until login by user
root.quit() 
inst_window=Tk()


#instruction and login window

login_frame=Frame(inst_window,bg="lightpink",height=100,width=100)
check_var=StringVar()
admin_check=Checkbutton(login_frame,text="Adm",variable=check_var, onvalue='admin',offvalue='user',command=c)
login=Button(login_frame,text="login",command=c)
admin_check.grid(row=0,columnspan=2)
login.grid(row=1,columnspan=2)

login_frame.pack()
login_frame.pack_propagate(0)

root.mainloop()

正如Brian Oakley所述,您不能有兩個Tk() ,而應使用Toplevel()

更改inst_window=Tk()

inst_window=Toplevel(root)

完成此操作后,就沒有其他問題了,代碼可以正常工作。 您可能還希望將復選框的默認值設置為未選中,您可以這樣做:

check_var.set("user")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM