当程序启动时,tkinter中的两个单选按钮都被选中的原因是因为在创建单选按钮时,没有指定任何一个单选按钮为默认选中状态。默认情况下,tkinter会将第一个创建的单选按钮设置为选中状态。
要解决这个问题,可以通过设置单选按钮的variable
参数来实现只有一个单选按钮被选中。variable
参数用于指定一个IntVar
或StringVar
类型的变量,当单选按钮被选中时,该变量的值会被更新。
以下是一个示例代码,展示如何创建两个单选按钮,并设置其中一个为默认选中状态:
import tkinter as tk
root = tk.Tk()
# 创建一个IntVar类型的变量
selected_option = tk.IntVar()
# 创建两个单选按钮,将它们的variable参数设置为selected_option
# value参数用于指定选中该单选按钮时,selected_option的值
radio_button1 = tk.Radiobutton(root, text="Option 1", variable=selected_option, value=1)
radio_button2 = tk.Radiobutton(root, text="Option 2", variable=selected_option, value=2)
# 将其中一个单选按钮设置为默认选中状态
radio_button1.select()
radio_button1.pack()
radio_button2.pack()
root.mainloop()
在上述示例中,radio_button1
被设置为默认选中状态,而radio_button2
则不被选中。你可以根据实际需求选择设置哪个单选按钮为默认选中状态。