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. Ngrinder 制作脚本-(二)

    接上一篇文章:了解了Ngrinder的介绍和工作原理之后,相信大家都想着怎么使用这款工具进行性能测试 一.Ngrinder-Controller 的安装 环境要求: (1)jdk1.8以上 (2)Ja ...

  2. Zero-Shot Temporal Action Detection via Vision-Language Prompting概述

    1.针对的问题 现有的方法在推断时只能识别之前见过的类别,即训练时出现过的类别,而为每个感兴趣的类收集和注释大型训练集是昂贵的. 2.主要贡献 (1)研究了如何利用大量预训练的ViL模型进行未修剪视频 ...

  3. react native 更改项目包名

    修改工程名,需要以下几个步骤: 修改android/app/build.gradle里的applicationId,为新包名,譬如:com.xxx.yyy.myProject 修改android/ap ...

  4. 在linux环境中安装node,npm,express

    linux安装node 连接运程命令: 进入usr/local 文件夹 cd /usr/local 1.下载 wget https://nodejs.org/dist/v14.17.6/node-v1 ...

  5. unity读取Excel表格保存到Sqlite数据库

    1.读取Excel表格和保存sqlite数据库所用到的dll文件   下载链接:dll文件 最后如下图所示 废话不多说了,直接上代码吧 因为太长就折叠了 using System.Collection ...

  6. 从Sql Server转战Oracle 之 变量声明

    1 --两种声明方法:没有sql所谓的select或者select @para from table 以及 set 赋值,且赋值的时候需要在begin end事务内 2 一 直接声明 3 declar ...

  7. mongodb删除指定字段

    db.getCollection('geoServer').update({},{$unset:{longitude:null,latitude:null}},{ multi: true}) 实测有效 ...

  8. *args、**kwargs参数组

    '''def test(*args): # *agrs接收的是N个位置参数,不能接受关键字参数,转化成元祖 print(args)test(1,2,3,4,5,6)test(*[1,2,4,5,5]) ...

  9. 网页制作02--banner制作

    样本: 第一步:先做一个超大的通栏banner盒子. 第二步:在通栏盒子里面做一个版心的盒子 第三部:版心盒子里面在分左边盒子和右边盒子 1号盒子是通栏的大盒子banner,不给宽度,给高度.给一个蓝 ...

  10. 31 ModelForm常用功能--扩充

    ModelForm自定义字段的显示效果 class ChargeModelForm(BootStrapModelForm, forms.ModelForm): # 静态变量 # charge_type ...