Python——tkinter窗口视窗的功能部件

2024-04-10 20:38

本文主要是介绍Python——tkinter窗口视窗的功能部件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

tkinter简介

Tkinter 是使用 python 进行窗口视窗设计的模块。Tkinter模块(“Tk 接口”)是Python的标准Tk GUI工具包的接口。作为 python 特定的GUI界面,是一个图像的窗口,tkinter是python 自带的,可以编辑的GUI界面,我们可以用GUI 实现很多直观的功能,比如想开发一个计算器,如果只是一个程序输入,输出窗口的话,是没用用户体验的。所有开发一个图像化的小窗口,就是必要的。

tkinter 控件详细介绍:

tkinter 部件表格:

在这里插入图片描述

tkinter支持的16个核心窗口如下:

Button:一个简单的按钮,用来执行一个命令或别的操作。
Canvas:组织图形。这个部件可以用来绘制图表和图,创建图形编辑器,实现定制窗口部件。
Checkbutton:代表一个变量,它有两个不同的值。点击这个按钮将会在这两个值间切换。
Entry:文本输入域。
Frame:一个容器窗口部件。帧可以有边框和背景,当创建一个应用程序或dialog(对话)版面时,帧被用来组织其它的窗口部件。
Label:显示一个文本或图象。
Listbox:显示供选方案的一个列表。listbox能够被配置来得到radiobutton或checklist的行为。
Menu:菜单条。用来实现下拉和弹出式菜单。
Menubutton:菜单按钮。用来实现下拉式菜单。
Message:显示一文本。类似label窗口部件,但是能够自动地调整文本到给定的宽度或比率。
Radiobutton:代表一个变量,它可以有多个值中的一个。点击它将为这个变量设置值,并且清除与这同一变量相关的其它radiobutton。
Scale:允许你通过滑块来设置一数字值。
Scrollbar:为配合使用canvas, entry, listbox, and text窗口部件的标准滚动条。
Text:格式化文本显示。允许你用不同的样式和属性来显示和编辑文本。同时支持内嵌图象和窗口。
Toplevel:一个容器窗口部件,作为一个单独的、最上面的窗口显示。
messageBox:消息框,用于显示你应用程序的消息框。(Python2中为tkMessagebox)
注意在Tkinter中窗口部件类没有分级;所有的窗口部件类在树中都是兄弟关系。

部分功能部件代码示例:

1.主窗口的创建以及Lable标签的创建使用:
#导入tkinter 包
import tkinterwindow=tkinter.Tk()#创建窗口对象
window.geometry("500x300")#定义窗口大小
window.title("My Window")#窗口的名称
# 在窗口中添加文本标签,使用tkinter.Lable来添加
lable=tkinter.Label(text='Hello!this is Tkinter', bg='red', font=('仿宋', 15), width=30, height=2)
#bg为背景,font为字体,width为长,height为高,这里的长和高是字符的长和高,比如height=2,就是标签有2个字符这么高
#当然,若只是想让字符显示在窗口中,并不设置背景与字体等,可以直接这样写:
# lable=thinter.Lable("Hello!this is Tkinter")
lable.pack()#将文本标签锁定
window.mainloop()

运行结果如下:
在这里插入图片描述

2.Button窗口部件:

Button窗口部件简单说明:
  Button(按钮)部件是一个标准的Tkinter窗口部件,用来实现各种按钮。按钮能够包含文本或图象,并且你能够将按钮与一个Python函数或方法相关联。当这个按钮被按下时,Tkinter自动调用相关联的函数或方法。
  按钮仅能显示一种字体,但是这个文本可以跨行。另外,这个文本中的一个字母可以有下划线,例如标明一个快捷键。默认情况,Tab键用于将焦点移动到一个按钮部件。
  简言之,按钮部件用来让用户说“马上给我执行这个任务”,通常我们用显示在按钮上的文本或图象来提示。按钮通常用在工具条中或应用程序窗口中,并且用来接收或忽略输入在对话框中的数据。关于按钮和输入的数据的配合,可以参看Checkbutton和Radiobutton部件。
  Button部件使用语法:
 btn=tkinter.Button(window,text=“确定”,command=回调函数名称)

代码部分:
#导入tkinter 包
import tkinterwindow=tkinter.Tk()#创建窗口对象
window.geometry("500x300")#定义窗口大小
window.title("My Window")#窗口的名称# 将Lable标签中的文本变量设置为字符型的,并用var来接收
var=tkinter.StringVar()# 在窗口中添加文本标签,使用tkinter.Lable来添加,但是将窗口中的文本为文本变量形式,究竟要赋什么值,要看var是什么了
lable=tkinter.Label(textvariable=var, bg='red', font=('仿宋', 15), width=30, height=2)
#bg为背景,font为字体,width为长,height为高,这里的长和高是字符的长和高,比如height=2,就是标签有2个字符这么高
lable.pack()#将文本标签锁定def hit():var.set("hello!this is tkinter")#定义按钮
btn=tkinter.Button(text="确定",font=('Arial', 12), width=10, height=1,command=hit)
btn.pack()window.mainloop()

运行结果如下:
在这里插入图片描述

在这里插入图片描述

3.Entry窗口部件:

Entry是tkinter类中提供的的一个单行文本输入域,用来输入显示一行文本

import tkinterwindow=tkinter.Tk()#创建窗口对象
window.geometry("500x300")#定义窗口大小
window.title("My Window")#窗口的名称h1=tkinter.Entry(window,show="*",font=('Arial',20))#以密文形式显示
h1.pack()
h2=tkinter.Entry(window,show=None,font=('Arial',20))#以明文形式显示
h2.pack()window.mainloop()

运行结果如下:
在这里插入图片描述
在这里插入图片描述

4.Listbox窗口部件: 显示有一个可供选择的列表
#1.导入tkinter 包
import tkinter
#2.定义窗口的基本信息
window=tkinter.Tk()#创建窗口对象
window.geometry("500x300")#定义窗口大小
window.title("My Window")#窗口的名称var1=tkinter.StringVar()
#3。在窗口中添加lable标签,用来显示选中的选项   用var1来接收
lable1=tkinter.Label(window,textvariable=var1,background='yellow',fg='red',font=('Arial',20),width=10,height=2)
lable1.pack()#5.创建一个方法用于按钮的点击事件
def btn_hit():value=listbox.get(listbox.curselection())#获取当前选中文本var1.set(value)#4.创建一个按钮
btn=tkinter.Button(window,text="print selection",width=15,height=2,bg='green',command=btn_hit)
#注意command后面的函数不能加(),否则,不点击按钮就直接执行函数了
btn.pack()#6.创建listbox并为其添加内容var2=tkinter.StringVar()
var2.set((1,2,3,4,5,6))#为var2 置值# 6.1创建listbox
listbox=tkinter.Listbox(window,listvariable=var2)#将var2 的值赋给listbox
#6.2 创建一个列表,并将列表中的值循环加入listbox中
list=[7,8,9]
for item in list:listbox.insert(item)
#不要忘记将listbox进行锁定哟
listbox.pack()
window.mainloop()

运行结果如下:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.messageBox窗口部件

messageBox:用于显示应用消息的消息框,实际上就相当于我们平时所看到的弹窗(提示对话框),

用法:需要定义一个触发功能,来触发这个弹框。这里可以使用button按钮功能来触发这个弹框,通过触发功能来调用messageBox。点击button就会显示对话框。

代码如下:

#1.导入tkinter 包
import tkinter
import tkinter.messagebox
#2.定义窗口的基本信息
window=tkinter.Tk()#创建窗口对象
window.geometry("500x300")#定义窗口大小
window.title("My Window")#窗口的名称#3.创建一个方法用于按钮的点击事件
def btn_hit():tkinter.messagebox.showinfo(title="hi",message='你好!')#使用showinfo提示信息对话框# tkinter.messagebox.showerror(title="hi",message="出错了")#使用showerror来提示出错对话框# tkinter.messagebox.showwarning(title="hi",message='警告!')#使用showwarning来提示警告对话框# print(tkinter.messagebox.askquestion(title="hi",message="你好!"))#使用askquestion来提示选择对话框,选择内容为是/否# print(tkinter.messagebox.askyesno(title="hi",message="你好!"))#使用askyesno来提示选择对话框,返回true false#4.创建一个按钮
btn=tkinter.Button(window,text="btn_hit",width=15,height=2,bg='green',command=btn_hit)
#注意command后面的函数不能加(),否则,不点击按钮就直接执行函数了
btn.pack()
window.mainloop()

运行结果如下:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
点击你好返回yes,点击否返回no(对应的是showquestion)
点击你好返回yes,点击否返回no(对应的是showquestion)
点击是返回true,点击否返回false,对应的是askyesno
点击是返回true,点击否返回false,对应的是askyesno

这篇关于Python——tkinter窗口视窗的功能部件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/892087

相关文章

Python中你不知道的gzip高级用法分享

《Python中你不知道的gzip高级用法分享》在当今大数据时代,数据存储和传输成本已成为每个开发者必须考虑的问题,Python内置的gzip模块提供了一种简单高效的解决方案,下面小编就来和大家详细讲... 目录前言:为什么数据压缩如此重要1. gzip 模块基础介绍2. 基本压缩与解压缩操作2.1 压缩文

Python设置Cookie永不超时的详细指南

《Python设置Cookie永不超时的详细指南》Cookie是一种存储在用户浏览器中的小型数据片段,用于记录用户的登录状态、偏好设置等信息,下面小编就来和大家详细讲讲Python如何设置Cookie... 目录一、Cookie的作用与重要性二、Cookie过期的原因三、实现Cookie永不超时的方法(一)

Python内置函数之classmethod函数使用详解

《Python内置函数之classmethod函数使用详解》:本文主要介绍Python内置函数之classmethod函数使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 类方法定义与基本语法2. 类方法 vs 实例方法 vs 静态方法3. 核心特性与用法(1编程客

Python函数作用域示例详解

《Python函数作用域示例详解》本文介绍了Python中的LEGB作用域规则,详细解析了变量查找的四个层级,通过具体代码示例,展示了各层级的变量访问规则和特性,对python函数作用域相关知识感兴趣... 目录一、LEGB 规则二、作用域实例2.1 局部作用域(Local)2.2 闭包作用域(Enclos

Python实现对阿里云OSS对象存储的操作详解

《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os

使用Python实现可恢复式多线程下载器

《使用Python实现可恢复式多线程下载器》在数字时代,大文件下载已成为日常操作,本文将手把手教你用Python打造专业级下载器,实现断点续传,多线程加速,速度限制等功能,感兴趣的小伙伴可以了解下... 目录一、智能续传:从崩溃边缘抢救进度二、多线程加速:榨干网络带宽三、速度控制:做网络的好邻居四、终端交互

Python中注释使用方法举例详解

《Python中注释使用方法举例详解》在Python编程语言中注释是必不可少的一部分,它有助于提高代码的可读性和维护性,:本文主要介绍Python中注释使用方法的相关资料,需要的朋友可以参考下... 目录一、前言二、什么是注释?示例:三、单行注释语法:以 China编程# 开头,后面的内容为注释内容示例:示例:四

Python中win32包的安装及常见用途介绍

《Python中win32包的安装及常见用途介绍》在Windows环境下,PythonWin32模块通常随Python安装包一起安装,:本文主要介绍Python中win32包的安装及常见用途的相关... 目录前言主要组件安装方法常见用途1. 操作Windows注册表2. 操作Windows服务3. 窗口操作

mysql表操作与查询功能详解

《mysql表操作与查询功能详解》本文系统讲解MySQL表操作与查询,涵盖创建、修改、复制表语法,基本查询结构及WHERE、GROUPBY等子句,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随... 目录01.表的操作1.1表操作概览1.2创建表1.3修改表1.4复制表02.基本查询操作2.1 SE

Python中re模块结合正则表达式的实际应用案例

《Python中re模块结合正则表达式的实际应用案例》Python中的re模块是用于处理正则表达式的强大工具,正则表达式是一种用来匹配字符串的模式,它可以在文本中搜索和匹配特定的字符串模式,这篇文章主... 目录前言re模块常用函数一、查看文本中是否包含 A 或 B 字符串二、替换多个关键词为统一格式三、提