这是我参与8月更文挑战的第20天,活动详情查看: 8月更文挑战
前言
我们常见的程序分为基于控制台的程序和基于图形界面的程序
基于控制台的程序常见例如:CMD终端窗口进行命令与程序交互
举个栗子,在命令窗口操作adb
基于图形界面的程序常见如:画图软件、办公软件、IDE等等
举个栗子,电脑里可视化的计算器
我们现在的程序都是基于图形界面的,可以让用户快速上手操作学习,降低学习计算机的成本
因此,本期我们将学习 GUI (Graphic User Interface)图形用户界面编程。
在 Python 中为我们提供了丰富的组件,可以快速的实现使用图形界面和用户交互。
🎵🎵废话不多说,我们来学习GUI编程相关的知识吧,Let’s go~
1. GUI编程概述
GUI 编程类似于”搭积木”,将一个个组件(Widget)放到窗口中。
我们通过画图可以看到它的组成部分分为:
①:画图菜单栏:文件/主页/查看这些都是按键组件
②:画图工具栏:粘贴、图像、颜色框这些都不同组件,统一地放到②容器里面显示
③:画图编辑区:由画布这个组件组成
④:画图底部滑动条:左右滑动条组件组成
⑤:画图右边滑动条:上下滑动条组件组成
❻:以上所有组件通过布局管理器进行排布管理,统一放到窗口的组件中
❼:最后我们为每个组件添加事件处理,做出不同的指令,组成完整的程序
因此,图形界面的程序中由格式样式的组件组成的,GUI编程就是使用Python模块提供给的组件,来进行组合搭建。
2. 常用的GUI库
库名 | 作用 |
---|---|
Tkinter | Tk interface 是 Python 标准GUI库,支持跨平台的GUI程序开发,tkinter适合小型的GUI程序编写,也特别刚入门的同学进行GUI编程学习掌握 |
wxPython | wxPython 是比较流行的GUI库,适合大型应用程序开发,功能强于tkinter 整体设计框架类似与MFC(Microsoft Foundation Classess微软基础类库),使用C++模块 |
PyQT | Qt 是一种开源的GUI库,适合大型GUI程序开发,PyQT是Qt工具包标准的Python实现,我们可以使用Qt Desginer 界面设计器快速开发GUI应用程序 |
Jython | Jython 程序可以Java集成。Jython拥有依赖的C语言模块,使用的是Java的模块 |
Pyforms | Pyforms 是一个用于开发GUI应用程序Python2.7/3.X 多运行环境框架,代码重用性高 |
Kivy | Kivy 是一个开源库,能够让使相同代码创建程序实现跨平台运行,支持创新型用户界面开发 |
🔔 我们目前重点学习Tkinter库,打好GUI编程基础
📢 Tkinter官方网站:docs.python.org/3.7/library…
Tkinter学习网站:effbot.org/tkinterbook… (目前该网站无法打开)
Tkinter学习网站: tmml.sourceforge.net/doc/tk/ (网站能正常使用)
3. 初试GUI编程
GUI编程的基础是学习tkinter模块,主要包括如下步骤:
-
创建应用程序主窗口对象(根窗口)
(1)通过类tkinter无参构造函数
from tkinter import* root = Tk()
-
在主窗口中,添加各种可视化组件。如按钮(button),文本框(label)
but1 = Button(root) but1["text"] = "add"
-
通过几何布局管理器,管理组件的大小和位置
but1.pack()
-
事件处理
(1)定义组件相关事件
def myadd(e): messagebox.showinfo("Message","添加成功") print("Success")
(2)通过绑定事件处理,响应用户操作触发的事件(比如:单击、双击等)
but1.bind("<Button-1>",myadd)
📣 重要说明:
-
我们创建窗口,必须要调用mainloop(),进入事件循环
root.mainloop()
-
事件处理格式
<[modifier-]…type[-detail]>
-
常用事件处理
事件类型 作用 单击鼠标左键 <Button-1>
单击鼠标右键 <Button-3>
向上滚动滑轮 <Button-4>
向下滚动滑轮 <Button-5>
鼠标左键双击 <Double-Button-1>
鼠标中键双击 <Double-Button-2>
鼠标右键双击 <Double-Button-3>
鼠标左键释放 <ButtonRelease-1>
鼠标右键释放 <ButtonRelease-3>
左键拖动 <B1-Motion>
右键拖动 <B3-Motion>
鼠标进入控件 <Enter>
鼠标移出控件 <Leave>
-
📣以上程序完成后,我们就创建一个小窗口包含一个添加按键如下
-
点击add按键,运行效果如下
总结
本期,我们学习GUI图形用户界面编程内容,可以通过 Python 提供的丰富的组件,快速实现使用图形界面和用户交互。
GUI提供丰富的组件库,让我们在进行编程时类似于”搭积木”形式快速完成用户交互界面
后面我们将深入学习Python提供的组件内容,画出漂亮的图像界面,提高我们程序使用体验。
以上是本期内容,欢迎大佬们点赞评论指正,下次见~ღ( ´・ᴗ・` )比心🌹🌹🌹🌹🌹✈️
今天的文章Python 初识GUI编程分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/15710.html