学Python这么久了,一直想作个界面出来,最近发现Python有个内置库tkinter,利用它能够很轻松作出一些简易的UI界面,首先来看Python官方对Tkinter的说明:python
The tkinter package (“Tk interface”) is the standard Python interface to the Tk GUI toolkit. Both Tk and tkinter are available on most Unix platforms, as well as on Windows systems.app
从上面描述中咱们不难看出,无论你是 Mac OS 系统,仍是 Windows 系统,它均可以生成相对应的操做界面,这就是所谓的跨平台。框架
其原理就是咱们使用 Python代码去调用 Tkinter, Tkinter 已经封装了访问TK的接口,这个接口是一个图形库,支持多跨平台操做系统,进而经过它,咱们就能够调用咱们系统自己的GUI接口了。函数
操做系统:Windows / Linux / Mac OSoop
Python版本:3.6.6布局
有了概念并了解原理以后,接下来就小试牛刀一下~学习
import tkinter # 定义一个窗体 top = tkinter.Tk() # 将其加入主循环 top.mainloop()
运行一下,biu~,三行代码就把一个窗口弹出来了,有没有很神奇~ui
接下来咱们要来点复杂的:操作系统
import tkinter as tk import tkinter.messagebox as mbox # 定义MainUI类表示应用/窗口,继承Frame类 class MainUI(tk.Frame): # Application构造函数,master为窗口的父控件 def __init__(self, master = None): # 初始化Application的Frame部分 tk.Frame.__init__(self, master) # 显示窗口,并使用grid布局 self.grid() # 建立控件 self.createWidgets() # 建立控件 def createWidgets(self): # 建立一个标签,输出要显示的内容 self.firstLabel = tk.Label(self,text="「人人都是Pythonista」专一Python领域,作最专业的Python星球。") # 设定使用grid布局 self.firstLabel.grid() # 建立一个按钮,用来触发answer方法 self.clickButton = tk.Button(self,text="点一下瞧瞧?",command=self.answer) # 设定使用grid布局 self.clickButton.grid() def answer(self): # 咱们经过 messagebox 来显示一个提示框 mbox.showinfo("「人人都是Pythonista」",''' 这是一个专一Python的星球,咱们提供「从零单排」、「实战项目」、「大航海」、「技术沙龙」、「技术分享」、「大厂内推」等系列供你选择及学习,固然也会有周边技术沿伸。 本星球会不按期开展各种实战项目,阶段性组织线上技术沙龙、分享等;对于职业发展路线不明确的,咱们会邀请到一些大厂hr及高级开发、经理等给你们解惑。 加入咱们,和千人一块儿玩Python,To be a Pythonista! ''') # 建立一个MainUI对象 app = MainUI() # 设置窗口标题 app.master.title('「人人都是Pythonista」') # 设置窗体大小 app.master.geometry('400x100') # 主循环开始 app.mainloop()
在这里:线程
运行后以下:
想要作出漂亮的UI界面,仍是须要深刻地学习下Tkinter这个模块。上文中的咱们只用到了框架、按钮、标签、文本这四种控件,而在Tkinter中给咱们提供了15种控件供你们使用。
此外Tkinter控件布局有三种方式:包装pack()、网格grid()、位置place(),本文中选用了grid,你们也能够逐一尝试下有什么区别,期待你们的大试牛刀~
关注公众号「Python专栏」,后台回复关键字:zsxq03,获取本文所有代码
