Tkinter CheckButton状态不变

问题描述

我正在用tkinter制作登录页面

因此,当用户单击CheckButton时,我希望显示密码,而当未选中该密码时,我希望将其隐藏...(标有星号)

我无法更改CheckButton的状态...

已经查看了几个答案,但不能解决我的问题

下面的示例代码

from tkinter import *

win = Tk()
var = Intvar()
chk = Checkbutton(win,text='See password',variable=var)
chk.grid(row=4,column=1,pady=5)

if var.get():
    print("Checked")
else:
    print("Not checked..")

win.mainloop()

运行代码时,未选中认值。因此,在我检查之后,它不会打印“已检查”。

很抱歉提出愚蠢的问题。.我是编程新手。

谢谢

解决方法

您可以将IntVar()绑定到一个函数,如果您更改了IntVar(),则您的函数将执行:

from tkinter import *


def callback(a,b,c):
    if var.get():
        print("Checked")
    else:
        print("Not checked..")


win = Tk()
var = IntVar()
var.trace('w',callback)
chk = Checkbutton(win,text='See password',variable=var)
chk.grid(row=4,column=1,pady=5)

win.mainloop()

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...