python-tkinter-GUI简单化编程之基础窗口
创作不易,请多包涵支持,谢谢!
python tkinter GUI简单化编程之文章目录(点击可传送)
一、自我介绍及封装
GUI的全称是图形用户接口,是人与计算机沟通的桥梁。针对于python的GUI开发库需要大量时间学习及入门的缺点,本文将进行改进。也就是进行封装后给读者提供接口函数,是GUI编程傻瓜化,短短数分钟就可以建立你自己的GUI窗口,且自己的代码也可以变的简洁。本系列文章将先以封装python的tkinter库为目标进行讲解,后续将会再封装其他python的GUI库。现在让我们开始吧!
二、使用方法
通常python使用import载入自己需要的库,而载入的库可以是pip直接安装的库,也可以是自定义的库,随着自己的python脚本放置 。本文的库使用的就是自定义的库,这样做的好处可以让读者看过本文封装的库后再自定义更改。
首先创建一个文件夹,在文件夹中添加两个python文件,分别为test.pyw
以及PythonGui.pyw
。test.pyw
是测试封装库的脚本文件可以根据自己需要更改名称;PythonGui.pyw
名称固定建议不要更改。至于为什么要使用.pyw
的后缀名,可以阅读python封装exe可执行文件后屏蔽去除cmd黑色命令框解决方案
三、封装基础窗口
在PythonGui.pyw
的首行添加以下代码,首先import载入封装的tkinter以及要用的的其他库
import os
import sys
import tkinter as tk
import tkinter.ttk as ttk
from tkinter import messagebox
至于tkinter库中的控件如何使用,本文不再叙述,有很多重复的博文可以轻松查阅。然后在PythonGui.pyw
再添加以下代码:
def A_建立根页面( 窗口属性, 图标属性 ):
'''
函数说明:\n\n
窗口属性是一个列表,元素的意义分别为:0.根窗口名称 1.窗口宽度 2.窗口高度 3.背景颜色\n\n
图标属性是一个.ico文件的路径,为空则使用默认图标\n\n
'''
界面GUI = tk.Tk()
界面GUI.title(窗口属性[0])
if len(窗口属性[3])>0:
界面GUI.config(bg=窗口属性[3])
if len(图标属性)>0:
界面GUI.iconbitmap(图标属性)
界面GUI.resizable(0,0)
放置于屏幕宽度处 = 界面GUI.winfo_screenwidth()
放置于屏幕高度处 = 界面GUI.winfo_screenheight()
临时变量1 = int((放置于屏幕宽度处-窗口属性[1])/2)
临时变量2 = int((放置于屏幕高度处-窗口属性[2])/2)
界面GUI.geometry(str(窗口属性[1]) +"x" + str(窗口属性[2]) +"+"+str(临时变量1)+"+"+str(临时变量2))
def 退出():
sys.exit()
界面GUI.protocol('WM_DELETE_WINDOW', 退出)
return 界面GUI
四、封装库的使用
在test.pyw中添加以下代码准备测试:
import PythonGui as GUI
主窗体 = GUI.A_建立根页面(['测试软件',800,500,'Beige'],'')
主窗体.mainloop()
代码中A_建立根页面()
函数中有两个形参分别为:1.窗口属性;2.图标属性。
其中,窗口属性是一个列表,元素的意义分别为:0.根窗口名称 1.窗口宽度 2.窗口高度 3.背景颜色;而图标属性是一个.ico文件的路径,为空则使用默认图标。
运行改程序可以生成一个800宽500高的GUI界面,其中界面的标题为"测试软件",背景颜色为’Beige’。至于图标形参为空,使用python-tkinter的默认图标。
程序最后一句主窗体.mainloop()
是窗口消息循环,在窗口运行时,该行之后的代码不会运行。因此要想给窗口添加其他代码,请写在该行之前。
五、总结
本章节,介绍了如何封装tkinter库的方法。若有建议之处,麻烦在评论区指出,共同进步,谢谢。ps:平常加班较多,我会抽空余时间更新后面章节。(请做一个手勤的程序猿,哪怕再简单的代码,自己书写一遍胜过粘贴十遍)