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简单实现Base64编码和解码的方法
Apr 29 Python
Python实现Windows和Linux之间互相传输文件(文件夹)的方法
May 08 Python
聊聊Python中的pypy
Jan 12 Python
NumPy 数学函数及代数运算的实现代码
Jul 18 Python
使用Python轻松完成垃圾分类(基于图像识别)
Jul 09 Python
python django下载大的csv文件实现方法分析
Jul 19 Python
Python数据分析模块pandas用法详解
Sep 04 Python
Python Tensor FLow简单使用方法实例详解
Jan 14 Python
python opencv如何实现图片绘制
Jan 19 Python
在 Python 中接管键盘中断信号的实现方法
Feb 04 Python
Pytorch distributed 多卡并行载入模型操作
Jun 05 Python
Python音乐爬虫完美绕过反爬
Aug 30 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 在5.1.* 和5.2.*之间 PDO数据库操作中的不同之处小结
2012/03/07 PHP
探讨php中防止SQL注入最好的方法是什么
2013/06/10 PHP
php将字符串转化成date存入数据库的两种方式
2014/04/28 PHP
Yii安装与使用Excel扩展的方法
2016/07/13 PHP
Symfony2创建基于域名的路由相关示例
2016/11/14 PHP
js 获取浏览器高度和宽度值(多浏览器)
2009/09/02 Javascript
基于jQuery的输入框无值自动显示指定数据的实现代码
2011/01/24 Javascript
jquery $.ajax相关用法分享
2012/03/16 Javascript
javascript学习笔记(六) Date 日期类型
2012/06/19 Javascript
jQuery构造函数init参数分析续
2015/05/13 Javascript
jQuery实现模拟marquee标签效果
2015/07/14 Javascript
使用jquery实现仿百度自动补全特效
2015/07/23 Javascript
JavaScript人脸识别技术及脸部识别JavaScript类库Tracking.js
2015/09/14 Javascript
基于JavaScript实现高德地图和百度地图提取行政区边界经纬度坐标
2016/01/22 Javascript
JS实现Select的option上下移动的方法
2016/03/01 Javascript
canvas实现十二星座星空图
2017/02/14 Javascript
JS异步文件上传(兼容IE8+)
2017/04/02 Javascript
layui+SSM的数据表的增删改实例(利用弹框添加、修改)
2019/09/27 Javascript
关于vue的列表图片选中打钩操作
2020/09/09 Javascript
Javascript Symbol原理及使用方法解析
2020/10/22 Javascript
[34:27]DOTA2上海特级锦标赛B组败者赛 VG VS Spirit第一局
2016/02/26 DOTA
Python使用cx_Oracle模块将oracle中数据导出到csv文件的方法
2015/05/16 Python
详解python读取image
2019/04/03 Python
django之状态保持-使用redis存储session的例子
2019/07/28 Python
浅谈python图片处理Image和skimage的区别
2019/08/04 Python
关于Python3 类方法、静态方法新解
2019/08/30 Python
Python批量修改xml的坐标值全部转为整数的实例代码
2020/11/26 Python
CSS3实现可翻转的hover效果
2018/05/23 HTML / CSS
详解CSS3中常用的样式【基本文本和字体样式】
2020/10/20 HTML / CSS
美国快时尚彩妆品牌:Winky Lux(透明花瓣润唇膏)
2018/11/06 全球购物
大学本科毕业生求职简历的自我评价
2013/10/09 职场文书
2014年小学生迎国庆65周年演讲稿
2014/09/27 职场文书
大学生考试作弊被抓检讨书
2014/12/27 职场文书
风雨哈佛路观后感
2015/06/03 职场文书
小学英语新课改心得体会
2016/01/22 职场文书
Python 中的 copy()和deepcopy()
2021/11/07 Python