Tkinter 复选框同时勾选

问题描述 投票:0回答:2

在此代码中,当您选择其他复选框之一时,另一个复选框将被同步选择或取消选择。

例如,如果您单击了音频复选框,则麦克风复选框将如同您单击了它一样,并且 both 将切换。

import tkinter as tk
root = tk.Tk()

#Themes formatted as [background, text, Window background]
theme_dark = ['#1F2140', '#989BCD', '#121426']

audiouse = 0
micuse = 0

aud = tk.Checkbutton(root, text = "Would you like audio to be used by default?", variable=audiouse)
aud.grid(row=1, column=0, columnspan=4, pady=3)


mic = tk.Checkbutton(root, text = "Would you like microphone to be used by default?", variable=micuse)
mic.grid(row=2, column=0, columnspan=4, pady=3)

root.mainloop()

当单击一个框时,它应该自行切换,而不会影响另一个框。 我尝试更改变量和保存实际盒子本身的变量名称,但没有任何帮助。

python python-3.x tkinter checkbox
2个回答
1
投票

audiouse = 0
会将变量类型设置为

在 Tkinter 中,此类变量类型将不起作用。

只需将变量设置为 Tk 变量类型即可使其正常工作:

audiouse = tk.IntVar()
micuse = tk.IntVar()

0
投票
from tkinter import *

root = Tk()

checkbox= Checkbutton(root)
checkbox.pack()
checkbox.toggle() #<========

checkbox.mainloop()
© www.soinside.com 2019 - 2024. All rights reserved.