from tkinter import *

root = Tk()

name = StringVar()
check_box_list = []
ent=Entry(root,textvariable=name).pack() def clear():
for i in check_box_list:
i.pack_forget() # forget checkbutton
# i.destroy() # use destroy if you dont need those checkbuttons in future def generate():
k=name.get()
c=Checkbutton(root,text=k)
c.pack()
check_box_list.append(c) # add checkbutton btn1=Button(root,text="Submit",command=generate)
btn1.pack() btn2=Button(root,text="Clear",command=clear)
btn2.pack() mainloop()
# tkinter复选框操作

import tkinter as tk

root = tk.Tk()
root.title('问卷调查')
root.geometry('220x80') # 设置窗口大小 flag_1 = False
flag_2 = False
flag_3 = False
list_content = ['你的爱好是:']
hobby_list = ['游泳', '唱歌', '旅游'] def click_1():
global flag_1
flag_1 = not flag_1
if flag_1:
list_content.append(hobby_list[0])
else:
list_content.remove(hobby_list[0])
# print('你的爱好是:', list_content)
lab_msg['text'] = list_content def click_2():
global flag_2
flag_2 = not flag_2
if flag_2:
list_content.append(hobby_list[1])
else:
list_content.remove(hobby_list[1])
# print('你的爱好是:', list_content)
lab_msg['text'] = list_content def click_3():
global flag_3
flag_3 = not flag_3
if flag_3:
list_content.append(hobby_list[2])
else:
list_content.remove(hobby_list[2])
# print('你的爱好是:', list_content)
lab_msg['text'] = list_content '''窗体控件'''
# 标题显示
lab = tk.Label(root, text='请选择你的爱好:')
lab.grid(row=0, columnspan=3, sticky=tk.W) # 多选框
frm = tk.Frame(root)
ck1 = tk.Checkbutton(frm, text='游泳', command=click_1)
ck2 = tk.Checkbutton(frm, text='唱歌', command=click_2)
ck3 = tk.Checkbutton(frm, text='旅游', command=click_3)
ck1.grid(row=0)
ck2.grid(row=0, column=1)
ck3.grid(row=0, column=2)
frm.grid(row=1) lab_msg = tk.Label(root, text='')
lab_msg.grid(row=2, columnspan=3, sticky=tk.W) root.mainloop()

python tkinter Checkbutton的新增和清除 取值的更多相关文章

  1. Python:高级主题之(属性取值和赋值过程、属性描述符、装饰器)

    Python:高级主题之(属性取值和赋值过程.属性描述符.装饰器) 背景 学习了Javascript才知道原来属性的取值和赋值操作访问的“位置”可能不同.还有词法作用域这个东西,这也是我学习任何一门语 ...

  2. python测试开发django-67.templates模板变量取值

    前言 django 的模板里面变量取值是通过句点语法来取值,就是一个点(.)符号.取值的对象也可以是字符串,int类型,list列表,字典键值对,也可以是一个类的实例对象. views视图 比如我在 ...

  3. 跟着太白老师学python day10 名称空间,作用域和取值顺序,变量的加载顺序

    名称空间分为3种: 1. 全局名称空间 2. 内置名称空间 3. 局部名称空间(临时) 作用域 全局作用域              1全局名称空间 2 内置名称空间 局部作用域           ...

  4. Python读取Excel数据并根据列名取值

    一直想将自己接触到的东西梳理一遍,可就是迈不出第一步,希望从这篇总结开始不要再做行动的矮人了. 最近测试过程中需要用到python读取excel用例数据,于是去了解和学习了下xlrd库,这里只记录使用 ...

  5. Tkinter Checkbutton

    Python - Tkinter Checkbutton: checkbutton小部件用于显示切换按钮的用户多项选择.然后,用户可以通过点击相应的按钮每个选项中选择一个或多个选项.   checkb ...

  6. Python Tkinter学习笔记

    介绍 入门实例 显示一个窗口,窗口里面有一个标签,显示文字 import tkinter as tk # 一个顶层窗口的实例(Top Level),也称为根窗口 app = tk.Tk() # 设置窗 ...

  7. Python tkinter调整元件在窗口中的位置与几何布局管理

    Tkinter中的GUI总是有一个root窗口,不管你是主动或者别动获得.主窗口就是你的程序开始运行的时候创建的,在主窗口中你通常是放置了你主要的部件.另外,Tkinter脚本可以依据需要创建很多独立 ...

  8. Python tkinter模块和参数

    转自:https://www.cnblogs.com/aland-1415/p/6849193.html 1.使用tkinter.Tk() 生成主窗口(root=tkinter.Tk()):root. ...

  9. Python Tkinter 学习成果:点歌软件music

    笔者工作业余时间也没什么爱好,社交圈子也小,主要娱乐就是背着自己带电瓶的卖唱音响到住地附近找个人多的位置唱唱KtV. 硬件上点歌就用笔记本电脑,歌曲都是网上下载的mkv格式的含有两个音轨的视频.因此点 ...

  10. (转)]PYTHON Tkinter GUI

    import Tkinterroot=Tkinter.Tk()label=Tkinter.Label(root,text='hello ,python')label.pack()      #将LAB ...

随机推荐

  1. openstack 下云主机所在目录

    1.先查看云主机运行在哪个节点 2. [root@compute01 ~]# cd /var/lib/nova/instances/ 注: 云主机是一台链接克隆的虚拟机,_base 是母盘, fa56 ...

  2. vue的表单

    你可以用 v-model 指令在表单控件元素上创建双向数据绑定. 输入框 实例中演示了 input 和 textarea 元素中使用 v-model 实现双向数据绑定: <!DOCTYPE ht ...

  3. Python3之并发(四)---线程锁

    一.线程锁 保证多线程数据的一致性,对锁内的资源进行锁定,同一时间只能有一个线程来修改共享的数据多个线程同时加了同一个锁对象时,先获取到锁的线程会继续运行,未获取到锁的线程会处于堵塞状态,直到前面的线 ...

  4. 【Docker】清理磁盘占用

    查看磁盘空间占用 # /var/lib/docker # du -sh * 快速清理 简单清除不使用的镜像及容器 docker system prune docker system prune -a ...

  5. Delphi实现大写字母键打开提示

    uses XPMan 编辑框的passwordChar属性设置成 *

  6. pycharm 安装步骤

    1.双击安装包 2.点击next 3.选择安装目录后点击next进入下一步 4.根据你电脑的实际情况选择安装32位还是64位 5.勾选 .py 后即可点击next进入下一步 6.默认,直接next 7 ...

  7. 高性能的StampedLock锁

    StampedLock 支持的三种锁模式: 1.ReadWriteLock 支持两种模式:一种是读锁,一种是写锁 2.StampedLock 支持三种模式,分别是:写锁.悲观读锁和乐观读 1)写锁.悲 ...

  8. mysql的隔离级别以及存储引擎

    一.隔离级别 1.可序列化:(SERIALIZABLE):如果隔离级别为序列化,则用户之间通过一个接一个顺序地执行当前的事务,这种隔离级别提供了事务之间最大限度的隔离. 2.可重复读(REPEATAB ...

  9. sqlsever中使用的 select top n在mysql 语句中如何更改

    string sqlSelect = "select top(3) ROW_NUMBER() over(order by UserTime) as Num,* from " + & ...

  10. Arduino教程目录

    目录 第一节.安装Arduino开发环境 第二节.第一个HelloWorld 第二节续.LED操作 呼吸灯 流水灯 正在加快制作,大家可以先看下面的视频了解基本语法,我准备基础课程和实际项目结合讲解. ...