tkinter学习——选项按钮Radiobutton

23 篇文章 0 订阅

一、单选一

import tkinter as tk

def printSelection():
    num=var.get()
    if num==1:
        label.config(text='你是男生')
    else:
        label.config(text='你是女生')


win=tk.Tk()
win.title("单选1")

var=tk.IntVar()
var.set(1)

label=tk.Label(win,text='这是预设,尚未选择',bg='lightyellow')
label.pack()

rbman=tk.Radiobutton(win,text='男生',
                  variable=var,value=1,
                  command=printSelection)

rbman.pack()
rbwoman=tk.Radiobutton(win,text='女生',
                  variable=var,value=2,
                  command=printSelection)
rbwoman.pack()
win.mainloop()

二、单选二

import tkinter as tk

def printSelection():
    label.config(text='你是'+var.get())
    
win=tk.Tk()
win.title("单选2")

var=tk.StringVar()
var.set('男生')

label=tk.Label(win,text='这是预设,尚未选择',bg='lightyellow')
label.pack()

rbman=tk.Radiobutton(win,text='男生',
                  variable=var,value='男生',
                  command=printSelection)

rbman.pack()
rbwoman=tk.Radiobutton(win,text='女生',
                  variable=var,value='女生',
                  command=printSelection)
rbwoman.pack()
win.mainloop()

三、单选三

import tkinter as tk

def printSelection():
    print(cities[var.get()]) #列出所选城市
    
win=tk.Tk()
win.title("单选3")
cities={0:'北京',1:'上海',2:'广州',3:'厦门',4:'武汉'}

var=tk.IntVar()
var.set('0')

label=tk.Label(win,text='选择最喜欢的城市',
               fg='blue',bg='lightyellow',
               width=30)
label.pack()

for val,city in cities.items():
    tk.Radiobutton(win,
                   text=city,
                   variable=var,value=val,
                   command=printSelection).pack()

win.mainloop()

四、盒子选项按钮

import tkinter as tk

def printSelection():
    print(cities[var.get()]) #列出所选城市
    
win=tk.Tk()
win.title("单选4")
cities={0:'北京',1:'上海',2:'广州',3:'厦门',4:'武汉'}

var=tk.IntVar()
var.set('0')

label=tk.Label(win,text='选择最喜欢的城市',
               fg='blue',bg='lightyellow',
               width=30)
label.pack()

for val,city in cities.items():
    tk.Radiobutton(win,
                   text=city,
                   indicatoron=0,
                   width=30,
                   variable=var,value=val,
                   command=printSelection).pack()

win.mainloop()

五、含图象的选项按钮

import tkinter as tk

def printSelection():
    label.config(text='你选的是'+var.get())
    
win=tk.Tk()
win.title("单选5")

imgStar=tk.PhotoImage(file='star.gif')
imgMoon=tk.PhotoImage(file='moon.gif')
imgSun=tk.PhotoImage(file='sun.gif')
var=tk.StringVar()
var.set('星星')

label=tk.Label(win,text='这是默认值,尚未选择',
               fg='blue',bg='lightyellow',
               width=30)
label.pack()

rbStar=tk.Radiobutton(win,
                      image=imgStar,
                      text='星星',compound=tk.RIGHT, #图片在右
                      variable=var,value='星星',
                      command=printSelection)
rbStar.pack()
rbMoon=tk.Radiobutton(win,
                      image=imgMoon,
                      text='月亮',compound=tk.RIGHT,
                      variable=var,value='月亮',
                      command=printSelection)
rbMoon.pack()
rbSun=tk.Radiobutton(win,
                      image=imgSun,
                      text='太阳',compound=tk.RIGHT,
                      variable=var,value='太阳',
                      command=printSelection)
rbSun.pack()


win.mainloop()
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值