码迷,mamicode.com
首页 > 其他好文 > 详细

Tkinter的Radiobutton组件

时间:2020-05-06 13:43:07      阅读:57      评论:0      收藏:0      [点我收藏+]

标签:选中   oop   port   col   sel   imp   variable   序号   and   

Radiobutton:单选按钮

一、基本使用

程序效果,打印选中菜的价格。

代码1如下:

# coding:utf8
from tkinter import *
# 点击按钮打印蔬菜价格


class App:
    def __init__(self, master):
        dict1 = {1: 2, 2: 3, 3: 4, 4: 5}
        frame = Frame(master, width=200, height=100)
        frame.pack()
        # 设置默认值为1,默认青菜被选中
        v = IntVar()
        v.set(1)
        Radiobutton(frame, text="青菜", variable=v, value=1).pack()
        Radiobutton(frame, text="白菜", variable=v, value=2).pack()
        Radiobutton(frame, text="菠菜", variable=v, value=3).pack()
        Radiobutton(frame, text="黄瓜", variable=v, value=4).pack()

        # 触发事件
        def show():
            key = v.get()
            print("您选中菜的价格为: %d 元" % dict1[key])
            return True
        Button(frame, text="点击查看价格", command=show).pack()


root = Tk()
win = App(root)
root.mainloop()

代码2如下:

使用字典循环生成单选,如果价格不重复的话,可以用价格来指定value的值。

如果价格重复,那么选中这个,另一个也会选中,这时就需要另一个变量来代替了,也需要再加一个字典。

字典1:菜名:序号;字典2:序号:价格

# coding:utf8
from tkinter import *
# 点击按钮打印蔬菜价格


class App:
    def __init__(self, master):
        dict1 = {"青菜": 2, "白菜": 3, "菠菜": 4, "黄瓜": 5}
        frame = Frame(master, width=200, height=100)
        frame.pack()
        v = IntVar()
        v.set(dict1["青菜"])
        for i in dict1:
            Radiobutton(frame, text=i, variable=v, value=dict1[i]).pack()

        # 触发事件
        def show():
            key = v.get()
            print("您选中菜的价格为: %d 元" % key)
            return True
        Button(frame, text="点击查看价格", command=show).pack()


root = Tk()
win = App(root)
root.mainloop()


读书和健身总有一个在路上

Tkinter的Radiobutton组件

标签:选中   oop   port   col   sel   imp   variable   序号   and   

原文地址:https://www.cnblogs.com/Renqy/p/12835652.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!