Python中使用tkinter模块和类结构的结合使用举例——编写制作一个简单的加数GUI界面
这里写目录标题
- Python中使用tkinter模块和类结构的结合使用举例——编写制作一个简单的加数GUI界面
- 一、tkinter模块和类的简述
- 1.1 tkinter的简要介绍
- 1.2 类结构的简要介绍
- 二、基于类机构和tkinter模块创建GUI举例
- 2.1 问题描述
- 2.2 具体实现程序
- 2.3 运行结果
- 三、小结
编写程序实现GUI界面是一种重要的编程技能,Python 作为一种面向对象的程序编程语言,也提供了GUI设计的库。本文以tkinter库为基础进行GUI的简单设计举例,并在编写过程中说明类结构的定义方法。
一、tkinter模块和类的简述
1.1 tkinter的简要介绍
在python中,编写GUI界面(图形用户界面)时候,有时会采用tkinter模块实现。tkinter作为一种最常用的ython的实际标准GUI包,是值得熟悉的,具体介绍见本人博文(链接: Python中的tkinter工具包帮助文档查询以及Python其他GUI工具包分类)
1.2 类结构的简要介绍
类提供了将数据和功能绑定在一块使用的数据结构。类是对象实例创建的模板。具体见本人博文,链接: Python中的类和对象的概念理解和创建方法1——基本概念的理解和具体程序实例。
二、基于类机构和tkinter模块创建GUI举例
2.1 问题描述
本文采用Python中的tkinter模块编写实现一个加法器的GUI界面:在GUI界面中,有一个加1按钮,和加10按钮,并使用标签分别显示加1和加10后的结果。
2.2 具体实现程序
具体程序如下:
import tkinter as tk
## 构建一个类:NumberCounter
class NumberCounter:
## 定义第一个函数:函数__init__,其作用是建立一个GUI界面
def __init__(self, root):
self.root = root
##设置GUI界面的名称和尺寸
self.root.title("加法计数")
self.root.geometry("200x100")
##设置GUI界面中的第一个label
self.number1 = 0
self.label1 = tk.Label(self.root, text=str(self.number1),fg="black", bg="white")
self.label1.pack()
##设置GUI界面中的第二个label
self.number2 = 0
self.label2 = tk.Label(self.root, text=str(self.number2),fg="red", bg="yellow")
self.label2.pack()
## 设置GUI界面中的第一个按钮
self.button1 = tk.Button(self.root, text="加一", command=self.increment_number1,fg="black", bg="white")
self.button1.pack()
## 设置GUI界面中的第二个按钮
self.button2 = tk.Button(self.root, text="加十", command=self.increment_number2,fg="red", bg="yellow")
self.button2.pack()
## 定义第二个函数:函数increment_number1,作用为加1
def increment_number1(self):
self.number1 += 1
self.label1.config(text=str(self.number1))
## 定义第三个函数:函数increment_number2,作用为加10
def increment_number2(self):
self.number2 += 10
self.label2.config(text=str(self.number2))
if __name__ == "__main__":
root = tk.Tk()
number_counter = NumberCounter(root)
root.mainloop()
2.3 运行结果
运行初始结果如图1所示。点击GUI对应按钮后的一个实例,如图2所示。
图1 初始界面
图2 鼠标点击操作后的一个显示状态
三、小结
本文通过使用tkinter模块库和类结构实现了一个计数器的GUI界面,增进了对tkinter制作GUI界面的初步认识以及对类方法具体应用。