Python编程:Tkinter图形界面设计(1)

这篇具有很好参考价值的文章主要介绍了Python编程:Tkinter图形界面设计(1)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、Tkinter的程序框架

 二、窗口内容

2.1 窗口的几何尺寸

2.2 窗口的摆放位置

2.3  实验代码

2.4 控件管理

三、控件编程


一、Tkinter的程序框架

窗口的生成和窗口的呈现,用Tk()和mainloop()包括起来,中间程序是附着在窗口的内部部件。

Python编程:Tkinter图形界面设计(1)

 二、窗口内容

窗口的内容,是最丰富的细节包括:1、几何尺寸 2、按钮部件 3、...

2.1 窗口的几何尺寸

1)重要操作函数

  • 设置窗口的标题:root.title('Python GUI Learning')
  • 设置窗口大小:root.geometry('380x300')
  • 设定窗口可以(不可)重resize窗口:root.resizable(width=False, height=True)

2)参考代码

from tkinter import Tk
#初始化Tk()
root = Tk()
#设置标题
root.title('Python GUI Learning')
#设置窗口大小
root.geometry('380x300')
#设置窗口是否可变长、宽,True:可变,False:不可变
root.resizable(width=False, height=True)
#进入消息循环
root.mainloop()

2.2 窗口的摆放位置

如果摆放窗口位置,需要知道屏幕的长宽。

1)关键函数

  • 获取屏幕尺寸:screenwidth  = root.winfo_screenwidth()

                         screenheight = root.winfo_screenheight()

  • 设置窗口的大小位置:root.geometry('380x300+200+100')

                                 ( 长=380,高=300,左上角位置(200,100))

2.3  实验代码

from tkinter import Tk
#初始化Tk()
root = Tk()
#设置标题
root.title('Python GUI Learning')
#设置窗口大小
width = 380
height = 300
#获取屏幕尺寸以计算布局参数,使窗口居屏幕中央
screenwidth = root.winfo_screenwidth()
screenheight = root.winfo_screenheight()
alignstr = '%dx%d+%d+%d' % (width, height, (screenwidth-width)/2, (screenheight-height)/2)
root.geometry(alignstr)
#设置窗口是否可变长、宽,True:可变,False:不可变
root.resizable(width=False, height=True)
#进入消息循环
root.mainloop()

2.4 控件管理

1)常用控件种类

        一般窗口并不能实现交互,交互需要控件完成。Tkinter 提供了各种控件,如按钮、标签和文本框。在一个 GUI 应用程序中使用,这些控件通常被称为控件或者部件,目前有19种Tkinter 部件,如下列表:

控件 描述
button 按钮控件
Canvas 画布,可以实现几何元素的绘制;
Checkbutton 选择按钮
Entry 就是其它语言的editer,文本输入件
Frame 一个矩形区域,构成控件容器
Label 显示文字和图片
ListBox 列表框
MenuButton 菜单工具条
Menu 菜单
Message 消息控件,显示多行文本
RadioButton 单选按钮
Scale 可拉动数字游标尺
ScrollBar 滚动条
Text 显示多行文本
TopLevel 容器,用来提供单独对话框
Spinbox 输入控件,与Entry类,但支持范围
panedWindow 布局管理插件,上盛放控件
labelFrame 简单容器
tkMessageBox 显示应用程序的消息框

2 控件摆放( 几何管理)

        Tkinter 控件有特定的几何状态管理方法,管理整个控件区域组织,以下是 Tkinter 公开
的几何管理类:包、网格、位置。

几何方法 描述 属性说明
pack() 设置控件位置

after:将组件置于其它组件之后
before:将组件置于其它组件之前
anchor:组件对齐方式,顶对齐‘n',底对齐’s‘,左’w',右‘e'
side:组件在主窗口的位置,可以为’top‘,’bottom‘,’left‘,’right‘

fill:填充方式(X垂直,X:水平)
expand:1可扩展,0不可扩展

grid() 网格规划 column:组件所在的列起始位置
columnspam:组件列宽
row:组件起始位置
rowspam:组件的行宽
place() 位置

anchor:组件对齐方式

x:组件左上角x坐标

y:组件左上角y坐标

relx:组件对于窗口的x相对坐标(0,1)之间

rely:组件对于窗口的y相对坐标(0,1)之间

width:组件宽度

height:组件高度

relwidth:组件相对窗口的宽度(0,1)

relheight:组件相对窗口的高度(0,1)

三、控件编程

3.1 Lable控件

        标签控件,基本用法为:  Lable(root, option...) ,即:Label(根对象, [属性列表]),
其中属性列表如下:

可选属性 说明
text 文本内容 text=’登录名称‘
bg 背景颜色
fg 前景颜色
font 字体
width 宽度
height 高度
padx 水平边距
pady 垂直边距
justify 对齐方式
image 图像文件路径
compound 同一个区域显示文字和图片混合

Lable 控件实例
实例1:标签展示文本,代码如下:

from tkinter import*
#初始化Tk()
root = Tk()
#设置标题
root.title('Python GUI Learning')
#创建一个标签,显示文本
Label(root, text="user-name",bg='red',font=('Arial 12 bold'),width=30,height=1).pack()
Label(root, text="password",bg='green',width=20,height=2).pack()
#进入消息循环
root.mainloop()

执行结果:

Python编程:Tkinter图形界面设计(1)

 ​

实例2:标签展示图标,代码如下:

from tkinter import*
#初始化Tk()
root = Tk()
#设置标题
root.title('Python GUI Learning')
#创建一个标签,显示图标
logo = PhotoImage(file="temp.gif")
Label(root, image=logo).pack(side='left')
#进入消息循环
root.mainloop()

运行结果:

Python编程:Tkinter图形界面设计(1)

实例3:标签图文混叠,边距控制,代码如下:

from tkinter import*
#初始化Tk()
root = Tk()
#设置标题
root.title('Python GUI Learning')
#创建一个标签,显示文本
logo = PhotoImage(file="skyeL2.gif")
explanation = """At present, only GIF and PPM/PGM
formats are supported, but an interface
exists to allow additional image file
formats to be added easily."""
Label(root,compound=CENTER,text=explanation,image=logo).pack(side="right")
#进入消息循环
root.mainloop()

 运行结果:

Python编程:Tkinter图形界面设计(1)文章来源地址https://www.toymoban.com/news/detail-470099.html

到了这里,关于Python编程:Tkinter图形界面设计(1)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 人工智能交互系统界面设计(Tkinter界面设计)

    在现代信息化时代,图形化用户界面(Graphical User Interface, GUI)已经成为各种软件应用和设备交互的主流方式,与传统的命令行界面(CLI)相比,GUI 具有直观性、易用性、交互性、可视化和多任务处理等优势。设计良好的用户交互界面可以让用户以更加直观、友好的方式与计

    2024年01月16日
    浏览(47)
  • 数据库课程设计 python+mysql+图形化界面

    进行操作的表   增加界面   删除界面   修改界面    查找界面  

    2024年02月09日
    浏览(41)
  • Python图形用户界面设计-Delphi For Python高级开发教程

    目录 简介........................................................................ 5 谁应该阅读这本教程........................................................ 5 第1章 Python与Delphi...................................................... 6 什么是Delphi4Python....................................................... 6 1.1 Python语言介绍....

    2024年02月07日
    浏览(77)
  • Python tkinter(GUI编程)模块教程:打造出精美图形用户界面

    随着程序越来越复杂,命令行已经无法满足我们的需求,图形化界面已成为当前主流的界面设计。在Python中,tkinter是一种简单易用的GUI编程工具,可以帮助我们快速地创建图形用户界面。本文将通过实例详细介绍如何使用Python tkinter模块来打造出精美的图形用户界面。 安装

    2024年02月13日
    浏览(49)
  • [QT编程系列-7]:C++图形用户界面编程,QT框架快速入门培训 - 3- QT窗体设计 - 自定义工具栏、状态栏、快捷键、图标

    目录 3. QT窗体设计 3.2 自定义工具栏 3.2.1 目标 3.2.2 实现过程 3.2 自定义状态栏 3.2.1  目标 3.2.2  过程 3.3 自定义动作快捷键 3.4 自定义图标 在Qt中,ToolBar(工具栏)是一种常见的GUI元素,用于提供应用程序的常用工具按钮和操作。工具栏通常包含一系列图标按钮,用于执

    2024年02月15日
    浏览(54)
  • 基于opencv的车牌识别系统(UI界面采用tkinter设计)

    本系统采用python语言搭配opencv进行开发,在传统的车牌识别项目上进行改进,开发独特的GUI界面,方便使用者的使用。 需要源码的朋友点赞、关注我、再私信我获取源码,如果未能及时回复可以留下邮箱耐心等待奥 先上运行截图(下图分别为图片识别和摄像头识别结果) 项

    2023年04月23日
    浏览(57)
  • 设计图形用户界面的原则

    1) 一般性原则:界面要具有一致性、常用操作要有快捷方式、 提供简单的错误处理、对操作人员的重要操作要有信息反馈、操作可 逆、设计良好的联机帮助、合理划分并高效地使用显示屏、保证信息 显示方式与数据输入方式的协调一致 2) 颜色的使用:颜色是一种有效的强化

    2024年02月08日
    浏览(67)
  • Qt用户图形界面设计应用(闹钟)

    什么是Qt Qt 是一个跨平台的 C++ 图形用户界面库,由挪威 TrollTech 公司于 1995 年底出品,并于 2008年6月17日被NOKIA公司收购,以增强NOKIA公司在跨平 台软件研发方面的实力,更名为Qt Software。 Qt的优点 基本上, Qt 同 X Window 上的 Motif, Openwin, GTK 等图形界 面库 和 Windows 平台上的

    2024年02月08日
    浏览(62)
  • QT day1 (图形界面设计)

    要求:  功能函数模块  做出如下效果图:  

    2024年02月08日
    浏览(38)
  • MATLAB GUI图形化界面设计计算器

    MATLAB GUI界面设计教程可以帮助用户创建交互式的图形用户界面,以简化与MATLAB程序的交互过程。以下是一个简化的教程,指导你如何进行MATLAB GUI界面设计: 1. 启动GUIDE或App Designer GUIDE :在MATLAB命令窗口中输入 guide 命令,然后按Enter键启动GUIDE。 App Designer :在MATLAB的“Apps”

    2024年04月23日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包