checkbutton控件

简单的实现多选:

 import tkinter

 wuya = tkinter.Tk()
 wuya.title("wuya")
 wuya.geometry("300x200+10+20")

 # 创建四个多选框
 cb1 = tkinter.Checkbutton(wuya,text='周杰伦')
 cb1.pack()
 cb2 = tkinter.Checkbutton(wuya,text='周星驰')
 cb2.pack()
 cb3 = tkinter.Checkbutton(wuya,text='爱舞涯')
 cb3.pack()
 cb4 = tkinter.Checkbutton(wuya,text='蔡依林')
 cb4.pack()

 wuya.mainloop()

tkinter中如果不设置对齐方式,默认是居中的,如果要设置可以在pack()中加参数:cb1.pack(side='left')

结果为:

结合之前学的加lable和打印功能:

 import tkinter

 wuya = tkinter.Tk()
 wuya.title("wuya")
 wuya.geometry("300x200+10+20")

 # 加标签
 lb = tkinter.Label(wuya,text='请选择自己喜欢的名星(多选):',fg='blue')
 lb.pack()

 # 定义执行选择框后的函数
 def func():
     msg = ''
     if h1.get() == True: # 因为h1创建时是bool的运算,选中为真,不选为假
         msg += "周杰伦\n"
     if h2.get() == True:
         msg += "周星驰\n"
     if h3.get() == True:
         msg += "爱舞涯\n"
     if h4.get() == True:
         msg += "蔡依林\n"

     text.delete(0.0,tkinter.END)   # 清除text中的内容,0.0表示从第一行第一个字开始清除,end表示清除到最后结束
     text.insert('insert',msg)

 # 创建四个多选框
 h1 = tkinter.BooleanVar() # 设置选择框对象
 cb1 = tkinter.Checkbutton(wuya,text='周杰伦',variable=h1,command=func)
 cb1.pack()

 h2 = tkinter.BooleanVar()
 cb2 = tkinter.Checkbutton(wuya,text='周星驰',variable=h2,command=func)
 cb2.pack()

 h3 = tkinter.BooleanVar()
 cb3 = tkinter.Checkbutton(wuya,text='爱舞涯',variable=h3,command=func)
 cb3.pack()

 h4 = tkinter.BooleanVar()
 cb4 = tkinter.Checkbutton(wuya,text='蔡依林',variable=h4,command=func)
 cb4.pack()
 # side='left'表示左对齐

 # 创建一个文本框
 text = tkinter.Text(wuya,width=30,height=10)
 text.pack()

 wuya.mainloop()

结果为:

variable用法

variable主要用于传参和绑定变量。主要参数有:variabletextvariableonvalueoffvaluevalue

他是双向绑定的,也就是说如果该变量发生变化,随之绑定的控件也会变化,与他保持一致

常用的variable变量有:

  x = StringVar()  保存一个 string 类型变量, 默认值为""

  x = IntVar()  保存一个整型变量, 默认值为0

  x = DoubleVar()  保存一个浮点型变量,默认值为0.0

  x = BooleanVar()  保存一个布尔型变量,返回值为0表示假,1表示真

对他的操作主要有两个:

  设置他的值,用set()方法,即:x.set()

  得到他的值,用get()方法,即:x.get()

tkinter中checkbutton多选框控件和variable用法(六)的更多相关文章

  1. Java通过复选框控件数组实现添加多个复选框控件

    编写程序,通过复选框控件数组事先选择用户爱好信息的复选框,在该程序中,要求界面中的复选框数量可以根据指定复选框名称的字符串数组的长度来自动调节. 思路如下: 创建JPanel面板对象: 使用JPane ...

  2. CheckBox复选框控件

    CheckBox复选框控件 一.简介 1. 2.类结构图 二.CheckBox复选框控件使用方法 这里是使用java代码在LinearLayout里面添加控件 1.新建LinearLayout布局 2 ...

  3. css input checkbox复选框控件 样式美化的多种方案

    checkbox复选框可能是网站中常用的html元素,但大多数人并不满意它的默认样式,这篇文章就讲讲如何实现input checkbox复选框控件 样式美化效果. 资源网站大全 https://55w ...

  4. tkinter中combobox下拉选择控件(九)

    combobox控件,下拉菜单控件 combobox控件在tkinter中的ttk下 简单的实现下: import tkinter from tkinter import ttk # 导入ttk模块, ...

  5. WPF中实现多选ComboBox控件

    在WPF中实现带CheckBox的ComboBox控件,让ComboBox控件可以支持多选. 将ComboBox的ItemsSource属性Binding到一个Book的集合, public clas ...

  6. IOS中UITextView(多行文本框)控件的简单用法

    1.创建并初始化 UITextView文本视图相比与UITextField直观的区别就是UITextView可以输入多行文字并且可以滚动显示浏览全文.UITextField的用处多,UITextVie ...

  7. tkinter中spinbox递增和递减控件(十)

    spinbox递增和递减控件 import tkinter wuya = tkinter.Tk() wuya.title("wuya") wuya.geometry("3 ...

  8. Asp.net自定义单选复选框控件

    将常用的jquery插件封装成控件也是个不错的选择 下面是效果的简单颜色,由于博客系统的限制没法完整演示最终效果,请下载示例查看 Asp.netWeb APIC#Javascript   1.新建类库 ...

  9. Tkinter 之CheckButton复选框标签

    一.参数说明 语法 作用 Checkbutton(root,text='xxxx') 复选框显示的文本 Checkbutton(root,variable=id) 通过变量的值确定哪些复选框被选中 C ...

随机推荐

  1. 利用可变参实现fprintf函数

    #include <stdio.h> #include <stdarg.h> /* 可变参相关接口 typedef char * va_list ; void va_start ...

  2. Unity 实现模拟按键

    一直在想,使用模拟按键,也可以实现一些AI操作,具体还没做过,这里使用user32.dll在unity里写的一个简单demo using UnityEngine; using System.Colle ...

  3. leetcode之旅(9)-Reverse Linked List

    题目描述: Reverse a singly linked list. click to show more hints. Hint: A linked list can be reversed ei ...

  4. 关于Block的使用和5点注意事项

    一.概念 首先需要了解的是Block是一个代码块,是一个变量的形式存在的. 二.构成了解 我们需要在函数中声明block,因为是变量的形式,而且存在静态变量形式 类型1:  NSString* (^b ...

  5. JAVA_Lock

    今天是毕业入职的第一个周末,一直对多线程并发方面的知识比较感兴趣,因为目前我手里的项目并没有涉及到并发方面的知识,所以怕以后遗忘,也便于以后复习和使用,所以总结了一下Lock里面的一些类的方法.具体的 ...

  6. log4j日志的配置

    在项目开发中,记录错误日志方便调试.便于发现系统运行过程中的错误.便于后期分析, 在java中,记录日志有很多种方式,比如说log4j log4j需要导入的包: commons-loggin.jar ...

  7. jsp面试题

    1, JSP中有那些内置对象,以及作用? 共有9种基本内置组件: request 用户端请求,此请求会包含来自GET/POST请求的参数: response 网页传回用户端的回应: pageConte ...

  8. 一个SQL存储过程面试题(比较简单)

    三个月前刚毕业的时候,听到存储过程就头疼. 写一个SQL存储过程,建立一个表USER 字段是姓名,年龄,职位,权限,然后向里面插入6条数据,然后查询出年龄大于18的所有信息. 下面是答案: 复制代码 ...

  9. 获取redis主从复制链SHELL脚本

    获取redis主从复制链SHELL脚本 vi redisnode.sh #!/bin/sh master_host=$ master_port=$ auth=$ #判断输入密码是否为空,为空则转化为' ...

  10. Spring,@Controller,@RequestMapping, @ResponseBody,@RequestParam

    1.@Controller,放在类的上方,使类生效; 2.@RequestMapping,,指定一个映射,method为访问方式,headers为含有指定请求头 3. @ResponseBody将返回 ...