0
点赞
收藏
分享

微信扫一扫

Tkinter的Radiobutton组件


Radiobutton组件跟Checkbutton的用法基本一致,唯一不同的是Radiobutton实现的是单选的效果

要实现这种互斥额效果:

同一组内的所有Radiobutton只能共享一个variable选项,并且需要设置不同的value选项值

#导入模块

from tkinter import *

#创建主窗口
master = Tk()
#新建一个变量

v = IntVar()


Radiobutton(master, text="One", variable=v, value=1).pack(anchor=W)
Radiobutton(master, text="Two", variable=v, value=2).pack(anchor=W)
Radiobutton(master, text="Three", variable=v, value=3).pack(anchor=W)

mainloop()

pack()的ancher选项:

用于指定显示位置,可以设置为N,NE,E,SE,S,SW,W,NW,CENTER,这与地理中表示位置一样

Tkinter的Radiobutton组件_Lua


运行上述代码:

Tkinter的Radiobutton组件_Lua_02



如果有多个选项,可以使用循环来处理,这会使得代码更加简洁

from tkinter import *

master = Tk()


LANGS = [
("Python", 1),
("Perl", 2),
("Ruby", 3),
("Lua", 4)]

v = IntVar()
v.set(1)
for lang, num in LANGS:
b = Radiobutton(master, text=lang, variable=v, value=num)
b.pack(fill=X)

mainloop()


如果不喜欢前面这个小圈圈,还可以改成按钮的形式:

将indicatoron设置为False即可去掉前面的小圈圈

from tkinter import *

master = Tk()

LANGS = [
("Python", 1),
("Perl", 2),
("Ruby", 3),
("Lua", 4)]

v = IntVar()
v.set(1)
for lang, num in LANGS:
b = Radiobutton(master, text=lang, variable=v, value=num, indicatoron=False)
b.pack(fill=X)

mainloop()

运行:

Tkinter的Radiobutton组件_Perl_03

举报

相关推荐

0 条评论