zl程序教程

您现在的位置是:首页 >  其他

当前栏目

Tkinter单选

2023-04-18 16:10:35 时间

单选按钮Radiobuon

1.用于实现多选一的问题 2.可以包含文本或图像,每一个按钮都可以与一个函数或方式关联

3.同时只能选择一个,按钮之间有互相排斥效果

Radiobutton(master,**option) master:父容器 **options:可选项

使用方法

Radiobutton(
    root,
    text='显示的文本'
    textvariable=str1 # 通常是显示变量,如果变量被修改,会自动更新
    value=, # 标志该按钮选项的值,在同一组
    variale=,
    command=,)

程序成品

import tkinter as tk

root = tk.Tk()
root.title('饮食调查')
root.geometry('220x200')
lable1 = tk.Label(root,text='请选择你最爱吃的食品')
lable1.pack()

v = tk.IntVar()
v.set(1) # 设置为1

def suggest():
    n = v.get()
    if n == 1:
        str1.set('建议少吃,容易蛀牙')
    elif n == 2:
        str1.set('建议少吃,容易肥胖')
    elif n == 3:
        str1.set('建议多吃,非常好')
    elif n == 4:
        str1.set('建议多吃,非常好')
    elif n == 5:
        str1.set('建议少喝,容易蛀牙')

r1 = tk.Radiobutton(root,text='甜食',variable=v,value=1)
r2 = tk.Radiobutton(root,text='油炸食品',variable=v,value=2)
r3 = tk.Radiobutton(root,text='蔬菜水果',variable=v,value=3)
r4 = tk.Radiobutton(root,text='五谷杂粮',variable=v,value=4)
r5 = tk.Radiobutton(root,text='碳酸饮料',variable=v,value=5)

r1.pack(anchor='w')
r2.pack(anchor='w')
r3.pack(anchor='w')
r4.pack(anchor='w')
r5.pack(anchor='w')

# anchor选项设置对齐方法
# 参考地图上北下南左西右东,使用方向缩写表示
# 'n','s','e','w','ne','se','nw','sw','center'

str1 = tk.StringVar()
lable2 = tk.Label(root,textvariable=str1)
lable2.pack()
button = tk.Button(root,text='确定',command=suggest)
button.pack()

root.mainloop()

程序截图