from tkinter import * master = Tk() def var_states(): print((var1.get(),var2.get())) Label(master, text='Your sex:').grid(row=0,sticky=W) var1 = BooleanVar() Checkbutton(master, text='male', variable=var1).grid(row=1,sticky=W) var2 = IntVar() Checkbutton(master,text='female',variable=var2).grid(row=2,sticky=W) Button(master,text='Quit',command=master.quit).grid(row=3,sticky=W,pady=4) Button(master,text='Show',command=var_states).grid(row=4,sticky=W,pady=4) mainloop()
male打勾,female不勾
结果:
(True, 1)
如果直接
var1=IntVar() print((var1,var2.get()))
结果:(<tkinter.IntVar object at 0x000001FBB7490358>, 0)
如果:
var1=BooleanVar() print((var1,var2.get()))
结果:(<tkinter.BooleanVar object at 0x0000019E936C0390>, 0)
说明var1.get()很重要,把这一串转化为需要的表达