鱼c笔记——Python 的 GUI 编程(一):接触 Tkinter
Python 的 GUI 工具包有很多,之前的 EasyGUI 就是其中最简单的一个。但是 EasyGUI 实在是太简单了,因此只适合作为 GUI 编程的敲门砖。
而与 EasyGUI 不同,这次要介绍的 Tkinter 是 Python 的标准 GUI 库,Tkinter(Tk + interface)实际上是建立在 Tk 技术上的。Tk 技术最初是为 TCL 设计的,TCL 是一门有名的工具命令语言。但是由于可移植性和灵活性非常高,加上非常容易使用,因此被移植到许多脚本语言里,包括 Perl、Ruby 和 Python。
Tkinter 是 Python 的默认 GUI 库,像 IDLE 就是使用 Tkinter 设计出来的,因此我们只需要在 IDLE 里导入 Tkinter 就可以使用了。
下面是一个简单 GUI 程序
import tkinter as tk#实例化一个Tk,用于容纳整个工艺程序
app = tk.Tk() #Tk类生成了一个顶层窗口的实例app。是top level级别的一个窗口,也是root窗口#设置它的标题栏
app.title("My first python GUI code programmed with Tkinter") #设置窗口的标题,IDLE的标题就是文件的路径#设置Label组件,Label组件是最常用的组件之一。可以用于显示文本图标图片
theLabel = tk.Label(app, text='我的第一个窗口程序') #Label()是一个组件,组件实例化以后成为一个组件对象,赋值到一个变量里面去
theLabel.pack() #pack()方法用于自动调节组件自身的尺寸以及位置
#执行到这里,窗口还不会显示,必须执行下一句app.mainloop() #mainloop()是窗口的主事件循环,一般是放在整个工艺程序的最后一行,因为进入主事件循环后,就由Tkinter接管一切
#在界面编程里有这样一句名言:Don't call me, I'll call you。意思是一旦进入主事件循环,就不由我们写的代码做主了,而是由工艺程序来响应用户的输入。比如说用户点击一个按钮,Tkinter感受到这个按钮被点到了,就会调用我们为这个按钮安排好的方法,是由Tkinter调用我们的函数。
通常我们要写一个比较大的程序,应该把代码封装起来。在面向对象的编程语言里就是封装成类。
下面是一个进阶版的,把 GUI 封装成类:
import tkinter as tkclass APP:def __init__(self, master):frame = tk.Frame(master) #Frame框架是放在顶层窗口里的。框架一般用于在复杂的布局里面将这些组件分组的(编者话:不知道是不是和Java里面的Panel起到同样的作用)frame.pack(side=tk.LEFT, padx=10, pady=10) #side共有四个参数:Right,LEFT,TOP,BOTTOM#padx, pady设置框架距离顶层窗口x轴,y轴的距离#注意要加上command参数,参数值为函数名。当按钮被按下时,就会调用该方法self.hi_there = tk.Button(frame, text='打招呼', bg='black', fg='blue', command=self.say_hi) #创建一个按钮组件,放在Frame框架里。bg设置背景色的颜色。fg是前景色的意思(英文没听清楚),把打招呼的颜色设置为蓝色.self.hi_there.pack()def say_hi(self):print('空朋们好,这是我的第二个GUI程序。')root = tk.Tk() #先创建一个顶层窗口
app = APP(root) #再实例化这个APProot.mainloop()
鱼c笔记——Python 的 GUI 编程(一):接触 Tkinter相关推荐
- python界面编程-Python的GUI编程(TK)
TK在大多数 Unix平台.Windows平台和Macintosh系统都是预装好的,TKinter 模块是 Tk GUI 套件的标准Python接口.可实现Python的GUI编程. Tkinter模 ...
- python实现gui编程_怎样用Python3实现GUI编程?
目前来说,大部分用python实现GUI开发,主要是tkinter,wxPython,PyQt这3个包,如果你只是实现一个小型的桌面GUI应用,做个小型系统的话,tkinter和wxPython完全就 ...
- python支持gui编程_Python GUI编程完整示例
本文实例讲述了python gui编程.分享给大家供大家参考,具体如下: import os from time import sleep from tkinter import * from tki ...
- Python pygame(GUI编程)模块最完整教程(1)
提示:下滑文章左侧可以查看目录! 1 初识pygame 1.1 简介 参考资料:About - pygame wiki pygame是python中一个流行的GUI编程模块,是专门为了开发游戏而设计的 ...
- Python之GUI编程
一.常用的GUI库 Tkinter:tkinter(Tk interface)是Python的标准GUI库,支持跨平台的GUI程序开发,tkinter适合小型的GUI程序编写,也特别适合初学者学习GU ...
- python的gui编程用途_Python19-03_GUI编程----GUI编程的介绍(第一个程序)
GUI编程的介绍(第一个程序) GUI图形用户界面编程 我们前面实现的都是基于控制台程序, 程序和用户交互通过控制台来完成. GUI(Graphics User Interfance)即图形用户界面编 ...
- python的gui编程pyqt5_Python-GUI编程-PyQt5
章节1:Python-GUI编程-简介课时1Python-GUI编程-简介14:19课时2Python-GUI编程-GUI库的简介13:43课时3Python-GUI编程-PyQt的简介11:44课时 ...
- python的GUI编程和tkinter学习笔记——第一个GUI程序
一.第一个GUI程序 from tkinter import * from tkinter import messagebox# 创建窗口 root = Tk()btn01 = Button(root ...
- 【Python】GUI编程(Tkinter)教程
什么是Tkinter? Tkinter 是 Python 的标准 GUI 库.Python 使用 Tkinter 可以快速的创建 GUI 应用程序. 由于 Tkinter 是内置到 python 的安 ...
最新文章
- C 库函数 int fprintf(FILE *stream, const char *format, ...) 发送格式化输出到流 stream 中
- 报名 | 想在硅谷近距离接触蚂蚁金服的CTO和一众技术高管?这个机会一定不能错过!...
- 第1章-导言-习题1.13-1.17
- go mysql recover_golang用panic和recover做业务流程中断的尝试
- 创纪录!浪潮云海完成OpenStack Rocky版本全球最大规模单一集群测试!
- SPA单页应用的优缺点
- PHP案例:实现数据库增删改查功能
- 【初体验】valgrind分析程序性能
- idea创建springboot项目+mybatis_从spring boot项目创建到netty项目过渡1
- 自己在总结前人经验下弄的几个opencv封装函数
- Linux 中软件使用及常见问题 QA
- 2017-01-27-一句话木马原理详解
- Nginx优化---防盗链--网页缓存--网页压缩--日志分割
- CPU中控制器的功能
- ValidateCode源码
- 微信小程序canvas绘制圆形头像
- 改变el-input框的样式(去掉边框),及scoped实现原理
- 身份证OCR识别发展史
- Java中的基本数据类型是哪些_java中基本数据类型有哪些
- 安装OpenCV时遇到的几种错误