鱼C论坛

 找回密码
 立即注册
查看: 2121|回复: 2

radiobutton 怎么取消默认选择

[复制链接]
发表于 2021-6-16 11:09:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 lengyue869 于 2021-6-16 22:19 编辑

radiobutton默认会选择第一个,checkbutton有deselect()方法可以取消选择,radiobutton有类似的方法吗?


  1. import tkinter as tk

  2. root=tk.Tk()
  3. root.geometry('400x200+600+100')
  4. plant_list=['a','b','c']

  5. rbText=tk.IntVar()

  6. def plant_pick():
  7.     pass

  8. for plant in plant_list:
  9.     tk.Radiobutton(root, text=plant, value=plant_list.index(plant), variable=rbText,
  10.                    command=plant_pick).grid(row=0, column=plant_list.index(plant))

  11. root.mainloop()
复制代码
20210616110806.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-6-16 13:33:00 | 显示全部楼层
tk.Radiobutton(root, text=plant, value=plant_list.index(plant), variable=rbText,
AttributeError: 'NoneType' object has no attribute 'deselect'


20210616133107.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-16 22:18:40 | 显示全部楼层
Ctrl+.


  1. import tkinter as tk

  2. root=tk.Tk()
  3. root.geometry('400x200+600+100')
  4. plant_list=['a','b','c']

  5. rbText=tk.IntVar()
  6. rbText.set(None)
  7. def plant_pick():
  8.     lb.config(text='you have selected '+plant_list[rbText.get()])

  9. for plant in plant_list:
  10.     tk.Radiobutton(root, text=plant, value=plant_list.index(plant), variable=rbText,
  11.                    command=plant_pick).grid(row=0, column=plant_list.index(plant))

  12. lb=tk.Label(root,text='',bg='yellow')
  13. lb.grid(row=3,column=0)
  14. root.mainloop()
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-22 10:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表