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 相关文章推荐
python网络编程学习笔记(五):socket的一些补充
Jun 09 Python
Python比较两个图片相似度的方法
Mar 13 Python
详谈python read readline readlines的区别
Sep 22 Python
python实现人人自动回复、抢沙发功能
Jun 08 Python
python3爬取数据至mysql的方法
Jun 26 Python
关于python列表增加元素的三种操作方法
Aug 22 Python
Python3多线程版TCP端口扫描器
Aug 31 Python
pandas read_excel()和to_excel()函数解析
Sep 19 Python
Python常用编译器原理及特点解析
Mar 23 Python
Python获取excel内容及相关操作代码实例
Aug 10 Python
python 使用三引号时容易犯的小错误
Oct 21 Python
Python3 多线程(连接池)操作MySQL插入数据
Jun 09 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自带方法验证邮箱是否存在
2016/02/01 PHP
CakePHP框架Model关联对象用法分析
2017/08/04 PHP
tp5.0框架隐藏index.php入口文件及模块和控制器的方法分析
2020/02/11 PHP
OfflineSave离线保存代码再次发布使用说明
2007/05/23 Javascript
js 实现复制到粘贴板的功能代码
2010/05/13 Javascript
JavaScript 大数据相加的问题
2011/08/03 Javascript
Package.js  现代化的JavaScript项目make工具
2012/05/23 Javascript
javascript一元操作符(递增、递减)使用示例
2013/08/07 Javascript
js获取url参数值的两种方式
2013/09/10 Javascript
Javascript中的String对象详谈
2014/03/03 Javascript
js操作table元素实现表格行列新增、删除技巧总结
2015/11/18 Javascript
jQuery+json实现动态创建复杂表格table的方法
2016/10/25 Javascript
jQuery Ajax全解析
2017/02/13 Javascript
详解nodejs操作mongodb数据库封装DB类
2017/04/10 NodeJs
JavaScript之面向对象_动力节点Java学院整理
2017/06/29 Javascript
webpack4 CSS Tree Shaking的使用
2018/09/03 Javascript
layui动态表头的实现代码
2019/08/22 Javascript
JS数组索引检测中的数据类型问题详解
2021/01/11 Javascript
[02:51]DOTA2 Supermajor小组分组对阵抽签仪式
2018/06/01 DOTA
Python实现查找系统盘中需要找的字符
2015/07/14 Python
使用Python发送各种形式的邮件的方法汇总
2015/11/09 Python
python 时间戳与格式化时间的转化实现代码
2016/03/23 Python
详谈Python2.6和Python3.0中对除法操作的异同
2017/04/28 Python
python实现逻辑回归的方法示例
2017/05/02 Python
django中的数据库迁移的实现
2020/03/16 Python
python实现计算器简易版
2020/12/17 Python
不同浏览器对CSS3和HTML5的支持状况
2009/10/31 HTML / CSS
为您的家、后院、车库等在线购物:Spreetail
2019/06/17 全球购物
Zatchels官网:英国剑桥包品牌
2021/01/12 全球购物
会计职业生涯规划范文
2014/01/04 职场文书
2014年保管员工作总结
2014/11/18 职场文书
2014年卫生工作总结
2014/11/27 职场文书
教师年度个人总结
2015/02/11 职场文书
写作技巧:如何撰写一份优秀的营销策划书
2019/08/13 职场文书
用Python进行栅格数据的分区统计和批量提取
2021/05/27 Python
python使用pymysql模块操作MySQL
2021/06/16 Python