python tkinter之 复选、文本、下拉的实现


Posted in Python onMarch 04, 2020

我就废话不多说了,直接看代码吧!

import tkinter as tk
from tkinter import ttk
win = tk.Tk()
win.title("Python GUI")  # 添加标题
ttk.Label(win, text="Chooes a number").grid(column=1, row=0) # 添加一个标签0
ttk.Label(win, text="Enter a name:").grid(column=0, row=0) # 设置其在界面中出现的位置
# button被点击之后会被执行
def clickMe():  # 当acction被点击时,该函数则生效
 action.configure(text='Hello ' + name.get() + ' ' + numberChosen.get())#设置button显示的内容
 print('check3 is %d %s' % (chvarEn.get(), type(chvarUn.get())))
action = ttk.Button(win, text="Click Me!", command=clickMe) # 创建一个按钮, text:显示按
action.grid(column=2, row=1)  # 设置其在界面中出现的位置
# 文本框
name = tk.StringVar() # StringVar是Tk库内部定义的字符串变量类型,在这里用于管理
        #部件上面的字符;不过一般用在按钮button上。改变StringVar,按钮上的文字也随之改变。
nameEntered = ttk.Entry(win, width=12, textvariable=name) # 创建一个文本框,字符长度为12,
     #内容绑定到name,方便clickMe调用
nameEntered.grid(column=0, row=1) # 设置其在界面中出现的位置
nameEntered.focus() # 当程序运行时,光标默认会出现在该文本框中
# 一个下拉列表
number = tk.StringVar()
numberChosen = ttk.Combobox(win, width=12, textvariable=number, state='readonly')
numberChosen['values'] = (1, 2, 4, 42, 100) # 设置下拉列表的值
numberChosen.grid(column=1, row=1) # 设置其在界面中出现的位置 column代表列 row 代表行
numberChosen.current(4) # 设置下拉列表默认显示的值,0为numberChosen['values'] 的下标值
# 复选框
chVarDis = tk.IntVar() # 用来获取复选框是否被勾选,通过chVarDis.get()来获取其的状态,
           #其状态值为int类型 勾选为1 未勾选为0
check1 = tk.Checkbutton(win, text="Disabled", variable=chVarDis, state='disabled') # text为复选框
           #后面的名称,variable将该复选框的状态赋值给一个变量,当state='disabled'时,
           #该复选框为灰色,不能点的状态
check1.select() # 该复选框是否勾选,select为勾选, deselect为不勾选
check1.grid(column=0, row=4, sticky=tk.W) # sticky=tk.W 当该列中其他行或该行中的其他列的
          #某一个功能拉长这列的宽度或高度时,设定该值可以保证本行保持左对齐,
          #N:北/上对齐 S:南/下对齐 W:西/左对齐 E:东/右对齐
chvarUn = tk.IntVar()
check2 = tk.Checkbutton(win, text="UnChecked", variable=chvarUn)
check2.deselect()
check2.grid(column=1, row=4, sticky=tk.W)
chvarEn = tk.IntVar()
check3 = tk.Checkbutton(win, text="Enabled", variable=chvarEn)
check3.select()
check3.grid(column=2, row=4, sticky=tk.W)
win.mainloop() # 当调用mainloop()时,窗口才会显示出来

补充知识:【tkinter】填坑 解决Entry、Label不能修改text、image等属性的问题

tkinter中定义一个输入,如:

input =Entry(root).pack()

不等于以下定义

input =Entry(root) input.pack()

后者定义后直接布局,返回的不是Entry()控件本身,没有entry所有的一些方法如get()等

按照前者定义 input =Entry(root).pack() 后,可利用input.get() 获得输入框的文本信息。

利用 input['text']可修改Entry()文本框的文本内容。Label等控件同理,如法还可以修改Label['image']实现动态显示图片等操作。

以上这篇python tkinter之 复选、文本、下拉的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Linux系统上Nginx+Python的web.py与Django框架环境
Dec 25 Python
全面了解python字符串和字典
Jul 07 Python
Python常用内置模块之xml模块(详解)
May 23 Python
新手如何快速入门Python(菜鸟必看篇)
Jun 10 Python
Python实现爬取需要登录的网站完整示例
Aug 19 Python
Python实现接受任意个数参数的函数方法
Apr 21 Python
python pycurl验证basic和digest认证的方法
May 02 Python
Django ManyToManyField 跨越中间表查询的方法
Dec 18 Python
Python创建字典的八种方式
Feb 27 Python
Python如何把十进制数转换成ip地址
May 25 Python
python能自学吗
Jun 18 Python
python实现简单猜单词游戏
Dec 24 Python
自定义Django默认的sitemap站点地图样式
Mar 04 #Python
Python 窗体(tkinter)下拉列表框(Combobox)实例
Mar 04 #Python
Python3中的f-Strings增强版字符串格式化方法
Mar 04 #Python
Python MySQLdb 执行sql语句时的参数传递方式
Mar 04 #Python
python3格式化字符串 f-string的高级用法(推荐)
Mar 04 #Python
利用Python脚本批量生成SQL语句
Mar 04 #Python
一文了解python 3 字符串格式化 F-string 用法
Mar 04 #Python
You might like
php下把数组保存为文件格式的实例应用
2010/02/08 PHP
ThinkPHP中RBAC类的四种用法分析
2014/11/24 PHP
Symfony2在Nginx下的配置方法图文教程
2016/02/04 PHP
Zend Framework教程之Resource Autoloading用法实例
2016/03/08 PHP
CI框架实现创建自定义类库的方法
2018/12/25 PHP
javascript静态的url如何传递
2007/05/03 Javascript
JS文本框不能输入空格验证方法
2013/03/19 Javascript
JS防止用户多次提交的简单代码
2013/08/01 Javascript
jQuery元素的隐藏与显示实例
2015/01/20 Javascript
javascript实现在指定元素中垂直水平居中
2015/09/13 Javascript
理解Javascript的call、apply
2015/12/16 Javascript
浅谈JavaScript函数的四种存在形态
2016/06/08 Javascript
JS+Canvas实现的俄罗斯方块游戏完整实例
2016/12/12 Javascript
Vue+axios 实现http拦截及路由拦截实例
2017/04/25 Javascript
详解使用angular-cli发布i18n多国语言Angular应用
2017/05/20 Javascript
使用JS编写的随机抽取号码的小程序
2017/08/11 Javascript
解决vue-cli webpack打包后加载资源的路径问题
2018/09/25 Javascript
vue封装一个简单的div框选时间的组件的方法
2019/01/06 Javascript
微信小程序实现动态列表项的顺序加载动画
2019/07/25 Javascript
Python实现的质因式分解算法示例
2018/05/03 Python
Python实现的建造者模式示例
2018/08/06 Python
Selenium chrome配置代理Python版的方法
2018/11/29 Python
在matplotlib中改变figure的布局和大小实例
2020/04/23 Python
python中matplotlib实现随鼠标滑动自动标注代码
2020/04/23 Python
美国一家主营日韩美妆护肤品的在线商店:iMomoko
2016/09/11 全球购物
设计总监岗位职责
2013/12/07 职场文书
药品促销活动方案
2014/02/14 职场文书
销售内勤岗位职责
2014/04/15 职场文书
歌颂祖国演讲稿
2014/05/04 职场文书
公司募捐倡议书
2014/05/14 职场文书
评职称个人总结
2015/03/05 职场文书
买卖合同纠纷代理词
2015/05/25 职场文书
Python中Permission denied的解决方案
2021/04/02 Python
golang goroutine顺序输出方式
2021/04/29 Golang
解决sql server 数据库,sa用户被锁定的问题
2021/06/11 SQL Server
一文搞懂MySQL索引页结构
2022/02/28 MySQL