当前位置:   article > 正文

python tkinter库的Checkbutton和Radiobutton(单选按钮和多选按钮)如何使用_tk radiobutton

tk radiobutton

如何理解

首先要想灵活使用记得彻彻底底的理解这个按钮是怎么创建的。

这两种按钮的参数有很多,基本上和button和text的内容差不多。鼠标放置在其上可以观察到大概有这些主要参数

 要使用单选和多选按钮时,我们一般会通过用他的值来判断是否已经选择。因此我们需要用到tk库的专属变量(tk指tkinter),即tk.xxxVar。其中xxx是整形就为Int,xxx是字符串就为String

 *********************************************************************************************

 使用过程

多选按钮
  1. import tkinter as tk
  2. root=tk.Tk()
  3. root.geometry('500x300')
  4. a=tk.IntVar()
  5. b=tk.IntVar()
  6. def qq():
  7. print(1)
  8. c1=tk.Checkbutton(root,text='1按钮',variable=a,onvalue=1,
  9. offvalue=0,width=10,height=5,command=qq).pack()
  10. c2=tk.Checkbutton(root,text='2按钮',variable=b,onvalue=1,
  11. offvalue=0,width=10).pack()
  12. def qr1():
  13. if a.get()==1 and b.get()==1:
  14. print(2)
  15. elif a.get()==1 or b.get()==1:
  16. print(1)
  17. else:
  18. print(0)
  19. tk.Button(text='确认',command=qr1,width=10,height=2).pack()
  20. root.mainloop()

 其中onvalue是选定后返回的值。offvalue是未选定返回的值。variable绑定一个tk变量命名为a,用于储存按钮的值,需要使用这个值时需要get提取。command是选定或者取消时都会运行qq函数的一个事件。

单选按钮
  1. d=tk.StringVar()
  2. d.set('55')
  3. e1=tk.Radiobutton(root,variable=d,text='3按钮',value='55').pack()
  4. e2=tk.Radiobutton(root,variable=d,text='4按钮',value='100').pack()

单选按钮的值是储存在一个tk变量里的,因为你只能选择一个值,所以只需要储存选择这个值的变量即可。

注意:一开始需要为单选按钮设置值,这里设置成与3按钮的确认值一致那么它的初始选择就会是3按钮。如果不设置则会默认两个都选,如果绑定了command事件则会默认选第一项。

***************************************************************************

全部代码:

  1. import tkinter as tk
  2. root=tk.Tk()
  3. root.geometry('500x300')
  4. a=tk.IntVar()
  5. b=tk.IntVar()
  6. def qq():
  7. print(1)
  8. c1=tk.Checkbutton(root,text='1按钮',variable=a,onvalue=1,
  9. offvalue=0,width=10,height=5,command=qq).pack()
  10. c2=tk.Checkbutton(root,text='2按钮',variable=b,onvalue=1,
  11. offvalue=0,width=10).pack()
  12. def qr1():
  13. if a.get()==1 and b.get()==1:
  14. print(2)
  15. elif a.get()==1 or b.get()==1:
  16. print(1)
  17. else:
  18. print(0)
  19. tk.Button(text='确认',command=qr1,width=10,height=2).pack()
  20. # *****************************************************************
  21. d=tk.StringVar()
  22. d.set('55')
  23. e1=tk.Radiobutton(root,variable=d,text='3按钮',value='55').pack()
  24. e2=tk.Radiobutton(root,variable=d,text='4按钮',value='100').pack()
  25. def qr2():
  26. if d.get()=='55':
  27. print(10)
  28. if d.get()=='100':
  29. print(100)
  30. tk.Button(text='确认',command=qr2,width=10,height=2).pack()
  31. root.mainloop()

结果:

2月25日

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/喵喵爱编程/article/detail/813406
推荐阅读
相关标签
  

闽ICP备14008679号