Python 专题

小鱼儿学Tkinter-Radiobutton 单选按钮2

2022-07-07  本文已影响0人  小鱼儿_yzh

用 list 生成多个单选按键

实例 1

班级用列表,list1 = ['1班','2班','3班','4班','5班','6班','7班','8班','9班','10班']
用 index 和 item 从班级列表 list1 中取值, enumerate(list1) 。
index 和 item 与 enumerate() 相关联。

实例 1 代码:

from tkinter import *

def selectjob():
    #print(var.get())
    ms.set('你选择的班级是: '+list1[var.get()-1])
    
root = Tk()
var = IntVar()

list1 = ['1班','2班','3班','4班','5班','6班','7班','8班','9班','10班']
for index,item in enumerate(list1):
    ra1 = Radiobutton(
        root,
        text = item,
        variable = var,
        value = index + 1,
        command = selectjob)
    ra1.grid(row = 0, column = index ,sticky = 'w')
   
# 显示选择结果
ms = IntVar()
Message(root,textvariable =ms, width=200).grid(row = 1, column =0,columnspan=10)
root.mainloop()

实例 1 效果图:

图 1
实例 2

列表中的元素是一个元组,banji = [('高一 1 班',1),('高一 2 班',2),('高一 3 班',3),('高一 4 班',4)]
用 bj,num 对应列表 banji 中元组中的第一项和第二项。

实例 2 代码:

from tkinter import *
root=Tk()
banji = [('高一 1 班',1),('高一 2 班',2),('高一 3 班',3),('高一 4 班',4)]
v=IntVar()
v.set(1)
for bj,num in banji:
    b=Radiobutton(root,text=bj,variable=v,value=num, indicatoron =False)
    b.pack(fill='x')
mainloop()

实例 2 效果图:

图2
上一篇下一篇

猜你喜欢

热点阅读