美文网首页Python 专题
小鱼儿学Tkinter-Radiobutton 单选按钮2

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

作者: 小鱼儿_yzh | 来源:发表于2022-07-07 19:25 被阅读0次

    用 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

    相关文章

      网友评论

        本文标题:小鱼儿学Tkinter-Radiobutton 单选按钮2

        本文链接:https://www.haomeiwen.com/subject/shmvbrtx.html