问题描述
我的checkbtn值有点问题。
这是我的代码:
def select_data():
select_window = Tk()
var_autoTrader = Intvar()
check_sites_autoTrader = Checkbutton(select_window,text = 'autoTrader',variable = var_autoTrader)
var_bestcarfinder = Intvar()
var_cardady = Intvar()
var_cars = Intvar()
var_car_gurus = Intvar()
var_iseecars = Intvar()
var_truecar = Intvar()
check_sites_bestcarfinder = Checkbutton(select_window,text = 'bestcarfinder',variable = var_bestcarfinder)
check_sites_cardaddy = Checkbutton(select_window,text = 'cardady',variable = var_cardady)
check_sites_cars = Checkbutton(select_window,text = 'cars.com',variable = var_cars)
check_sites_car_gurus = Checkbutton(select_window,text = 'car gurus',variable = var_car_gurus)
check_sites_iseecars = Checkbutton(select_window,text = 'iseecars',variable = var_iseecars)
check_sites_truecar = Checkbutton(select_window,text = 'truecar',variable = var_truecar)
check_sites_autoTrader.grid(row = 0,column = 0,sticky = W)
check_sites_bestcarfinder.grid(row = 1,sticky = W)
check_sites_cardaddy.grid(row = 2,sticky = W)
check_sites_cars.grid(row = 3,sticky = W)
check_sites_car_gurus.grid(row = 4,sticky = W)
check_sites_iseecars.grid(row = 5,sticky = W)
check_sites_truecar.grid(row = 6,sticky = W)
def upload_selected_data():
print(var_autoTrader.get())// This one does not give me 1 when check is on
btn = Button(select_window,text = 'go!',command = upload_selected_data)
btn.grid(row = 7,sticky = W+E)
麻烦的是,当我选中复选框时,我的变量没有改变
非常感谢您!
解决方法
可能您是使用Tk()
创建了“主窗口”。在这种情况下,您应该使用Toplevel()
(而不是Tk()
)创建另一个窗口。
这意味着您应将select_window = Tk()
行更改为select_window = Toplevel()