当前位置:首页>python>Python GUI界面教程

Python GUI界面教程

  • 2026-09-17 16:29:00
Python GUI界面教程

Python GUI 编程入门教程(Tkinter 详细流程)

一、什么是GUI?为什么用Tkinter?

GUI 是图形用户界面(Graphical User Interface),就是带窗口、按钮、输入框的桌面程序。

Python 里做 GUI 最常用、最简单、自带不用安装的库就是 Tkinter。

它的优点:

- Python 自带,不用 pip 安装

- 语法简单,适合新手入门

- 跨平台(Windows、macOS、Linux 都能用)

- 适合做小工具、计算器、管理系统界面

本篇教程全程使用 Tkinter,带你从“空窗口”一步步做到“带按钮、输入、点击事件的完整程序”。

二、开发前准备

你只需要:

1. 安装好 Python(3.6 以上都行)

2. 任意编辑器:VS Code、PyCharm、IDLE 都可以

Tkinter 是 Python 标准库,不用额外安装,直接导入就能用。

三、GUI 开发基本流程(固定四步)

不管做什么界面,Tkinter 开发流程几乎固定:

1. 创建主窗口

2. 添加控件(按钮、文本、输入框等)

3. 设置布局(放在哪里)

4. 启动主循环(让窗口一直显示)

下面我们一步步实现。

四、第一步:创建最简单的窗口

新建文件  gui_demo.py ,写入代码:

python  

# 导入Tkinter库

import tkinter as tk

# 1. 创建主窗口

root = tk.Tk()

# 2. 设置窗口标题

root.title("我的第一个GUI程序")

# 3. 设置窗口大小

root.geometry("400x300")

# 4. 启动主循环(必须写!)

root.mainloop()

运行后,你会看到一个 400×300 的空白窗口。

 mainloop()  是 GUI 的“死循环”,让窗口持续显示、接收点击、拖动等操作。

五、第二步:添加常用控件

GUI 就是一堆控件的组合。最常用的有:

- Label:文字标签

- Button:按钮

- Entry:输入框

- Text:多行文本框

- Checkbutton:复选框

1. 添加文字 Label

python  

label = tk.Label(root, text="欢迎使用GUI", font=("宋体", 16))

label.pack()  # 布局:自动居中摆放

2. 添加输入框 Entry

python  

entry = tk.Entry(root, font=("宋体", 14))

entry.pack(pady=10)  # pady=上下间距

3. 添加按钮 Button

python  

btn = tk.Button(root, text="点击我", font=("宋体", 14))

btn.pack()

把这些代码放在  root.geometry  之后、 mainloop  之前。

运行后,你就有了文字 + 输入框 + 按钮。

六、第三步:让按钮真正有用——事件函数

GUI 核心是交互:点击按钮 → 执行功能。

我们写一个函数,获取输入框内容并弹出提示。

python  

from tkinter import messagebox

def show_msg():

    # 获取输入框内容

    content = entry.get()

    if content:

        messagebox.showinfo("提示", f"你输入了:{content}")

    else:

        messagebox.showwarning("警告", "输入不能为空!")

然后把函数绑定到按钮:

python  

btn = tk.Button(root, text="点击获取内容", command=show_msg)

 command=函数名  就是点击后执行的动作。

现在运行,输入内容点击按钮,就能弹出提示。

七、第四步:三种布局方式(必学)

Tkinter 有三种布局:

1. pack():自动从上到下排列(最简单)

2. grid():表格布局(像Excel,行×列)

3. place(x,y):精确坐标(适合固定位置)

grid 表格布局示例:

python  

label1 = tk.Label(root, text="用户名:")

label1.grid(row=0, column=0, padx=10, pady=10)

entry1 = tk.Entry(root)

entry1.grid(row=0, column=1, padx=10, pady=10)

label2 = tk.Label(root, text="密码:")

label2.grid(row=1, column=0, padx=10, pady=10)

entry2 = tk.Entry(root, show="*")

entry2.grid(row=1, column=1, padx=10, pady=10)

这会做出一个登录界面。

八、第五步:做一个完整小案例——登录窗口

我们把前面知识拼成一个可用的登录程序。

完整代码:

python  

import tkinter as tk

from tkinter import messagebox

def check_login():

    username = entry_user.get()

    password = entry_pwd.get()

    if username == "admin" and password == "123456":

        messagebox.showinfo("成功", "登录成功!")

    else:

        messagebox.showerror("失败", "用户名或密码错误")

# 主窗口

root = tk.Tk()

root.title("登录系统")

root.geometry("350x200")

# 控件

tk.Label(root, text="用户名:", font=("宋体",12)).grid(row=0,column=0,padx=10,pady=20)

entry_user = tk.Entry(root, font=("宋体",12))

entry_user.grid(row=0,column=1,padx=10)

tk.Label(root, text="密码:", font=("宋体",12)).grid(row=1,column=0,padx=10)

entry_pwd = tk.Entry(root, font=("宋体",12), show="*")

entry_pwd.grid(row=1,column=1,padx=10)

# 登录按钮

btn_login = tk.Button(root, text="登录", width=10, command=check_login)

btn_login.grid(row=2,column=0,columnspan=2,pady=20)

root.mainloop()

功能:

- 输入用户名 admin、密码 123456 → 登录成功

- 否则提示错误

这就是最标准的GUI项目结构。

九、Tkinter 学习路线(你接下来该学什么)

1. 更多控件:Listbox、Frame、Menu、Canvas

2. 界面美化:修改颜色、字体、大小、图标

3. 绑定键盘事件、鼠标事件

4. 多窗口切换(登录→主页)

5. 结合文件操作、数据库、爬虫做成工具

6. 打包成 exe 发给别人用(pyinstaller)

十、总结(核心思想)

Python GUI 开发并不难,Tkinter 是最好的起点。

固定流程:

创建窗口 → 加控件 → 设布局 → 写事件函数 → 启动循环。

只要掌握这一套,你就能做出:

- 计算器

- 记事本

- 学生管理系统

- 数据采集小工具

- 自动填表工具

GUI 是把代码变成人人能用的软件最直接的方式,非常适合练手、做毕设、写实用小工具。

最新文章

随机文章