内容正文:
Python语言
通过Python设计的图形界面
图形界面设计
2
图形用户界面(简称GUI) , 是指采用图形方式显示的计算机操作用户界面。
与计算机的命令行界面相比,图形界面对于用户的操作显得更加直观和简便。
图形界面设计
3
tkinter是Python的内置GUI模块。
使用tkinter可以快速地创建GUI应用程序,而且IDLE也是用tkinter模块编写而成的。
使用tkinter创建图形界面时, 首先使用import语句导入tkinter模块, 然后使用tkinter.Tk生成一个主窗体对象。
一、tkinter模块
图形界面设计
4
例如, 创建一个没有组件的GUI程序, 其程序代码如图所示
图形界面设计
5
测试效果如图所示。
图形界面设计
6
该例中生成的窗体,具有一般应用程序窗体的基本功能,可以最小化、最大化或关闭,甚至可以使用鼠标调整其大小。
其中设置窗体大小,可用Tk对象提供的一个方法geometry() 。
为了使窗体中添加的组件能得到及时刷新,可用Tk对象提供的另一个方法mainloop() 。
图形界面设计
7
当主窗体生成后,向窗体里添加组件,这样就可以处理窗体及其内部组件的事件。
二、tkinter的常用组件
图形界面设计
8
例如, 使用tkinter向窗体添加“退出”按钮, 其程序代码如图所示
图形界面设计
9
测试效果如图所示。
图形界面设计
10
上例程序代码中, 首先自定义单击这个按钮后的事件处理函数my_quit()
然后实例化tkinter模块中的1个按钮(Button) 组件
最后调用组件的pack() 方法,将这个组件添加到主窗体中。
图形界面设计
11
tkinter的常用组件, 如下表所示。
组件 名称 描述
Label 标签组件 可以显示文本和位图
Entry 输入组件 用于显示简单的文本内容
Text 文本组件 用于显示多行的文本内容
Button 按钮组件 在程序中显示按钮
图形界面设计
12
tkinter布局管理器能控制组件的位置摆放,提供三种布局方法,如表所示。
方法 功能
pack() 既可实现水平排列,也可实现垂直排列
grid() 按照行、列的方式摆放组件
place() 指定组件的绝对位置
图形界面设计
13
在程序设计中,解决复杂问题的最有效方法是“自顶向下”的设计方法和“自底向上”的执行方法。
其基本思想是:首先将一个复杂问题分解为多个小问题
然后只需把处理这些小问题的解决方法组合起来,就可以得到整体的解决方案。
三、tkinter模块的综合应用
图形界面设计
14
例如, 运用Python的tkinter模块, 设计的用户登录界面如图所示
图形界面设计
15
测试效果如图所示。
图形界面设计
16
1.设计思路
(1)设计基本框架。
(2)设计提示标签、输入框和按钮。
(3)设计功能函数。
(4)设计组件布局。
(5) 完整程序组合。
图形界面设计
17
(1)设计基本框架,程序代码如图所示。
2.程序详细分析
图形界面设计
18
(2)设计提示标签、输入框和按钮,程序代码如图所示。
图形界面设计
19
(3)设计功能函数,程序代码如图所示。
图形界面设计
20
(4)设计组件布局,程序代码如图所示。
图形界面设计
21
(5)完整程序组合,程序代码如图所示。
22
为了更快地解决特定领域的问题, Python爱好者和支持者开发并分享了大量的第三方库(或称为拓展库),涉及图形艺术、科学计算、大数据处理、网络应用、机器学习等多个领域
当解决特定领域的实际问题时, 如果单纯使用Python的内置模块,那么需要编写大量的代码来实现其算法。
Python第三方库的使用
极大地方便了人们的使用, 也充分体现Python的可扩展性。
图形界面设计
23
下表列出了Python常用第三方库的库名、用途和安装指令。
第三方库需要先正确安装,再导入,然后才能使用其中的对象。
一、Python常用的第三方库
库名 用途 pip安装指令
NumPy 数值计算 pip install numpy
PIL 图像处理 pip install pillow
Matplotlib 2D图形绘制 pip install matplotlib
pandas 数据分析 pip install pandas
Django Python的Web开发框架 pip install django
图形界面设计
24
例如, 安装PIL图像处理库, 只需要在联网状态下, 进入操作系统命令指示符环境
并切换到Python安装目录下的scripts目录中, 执行下面的命令就可以了。
:\>pip install pillow
图形界面设计
25
例如, PIL库共包括21个与图像处理相关的对象, 以PIL库中最常用的Image对象和Image Filter对象为例, 导入这两个对象的语句格式如下:
在Python中, 使用关键字import来导入第三方库中的对象, 格式如下:
二、Python第三方库的导入与使用
from<库名>import <对象>
>>>from PIL import Image
>>>from PIL import Image Filter
图形界面设计
26
感谢聆听
$$