Python GUI编程之Python GUI库综述( 二 )


下面就为各位朋友们简要介绍这几种常见的跨平台Python GUI库 。
2 基于Tk的Tkinter首先介绍的是基于Tk GUI库的Tkinter 。 因为Tkinter是Python语言内置的GUI库 。
2.1 Tkinter简介Tk是一个由C语言编写的轻量级的跨平台GUI库 。 Tkinter(也称Tk接口)是标准的Tk GUI库的Python接口 。
借助Tkinter , Python开发人员可以快速地创建跨平台的简单的 GUI 应用程序 。
2.2 Tkinter特点

  • Python内置库 , 无需额外安装 , 随时使用
  • 功能全面 , 学习和应用简单 , 开发速度快
  • 适用开发不太复杂的GUI应用程序
  • 2.3 Tkinter典型应用Python自带的IDLE应用程序就是用Tkinter编写的 , 示意如下:
    Python GUI编程之Python GUI库综述文章插图
    2.4 Tkinter简单示例一、示例代码:
    # 文件名:example_Tkinter.pyfrom tkinter import *root = Tk() root.title("TkinterWindow") root.geometry("400x100")label = Label(root, text="这是一个Tkinter窗口!").pack(expand=True)root.mainloop()二、示例运行效果:
    Python GUI编程之Python GUI库综述文章插图
    3 基于wxWidgets的wxPython3.1 wxPython简介wxWidgets是一个由C++语言编写的跨平台GUI库 。 wxPython是对wxWidgets的Python封装/绑定 , 可以Python模块的方式提供给开发者使用 。
    借助wxPython , Python开发人员可以很方便地创建跨平台的 , 具有健壮、功能强大的GUI应用程序 。
    wxPython是一款开源软件 , 是Tkinter的一个比较流行的替代品 , 功能上面要强于Tkinter 。 wxPython提供了超过200个类 , 面向对象的编程风格 , 设计的框架类似于MFC 。
    项目信息:
    (1)项目主页:
    (2)项目(PyPI)网址:
    Python GUI编程之Python GUI库综述文章插图
    (3)项目最新版本:v4.1.0(2020/04/25)
    3.2 wxPython特点
    • 程序简单
    • 易于编写
    • 易于理解
    • 针对大型GUI应用程序具有较强的优势
    3.3 wxPython典型应用
    • GRASS GIS , 一种免费且开源的地理信息系统桌面应用程序(如下图示) 。

    Python GUI编程之Python GUI库综述文章插图
    • BitTorrent , 一种点对点的BitTorrent应用程序 。
    • Google Drive , Google云端存储系统的桌面客户端 。
    • PlayOnLinux , 一个Wine软件兼容层的图形化前端应用程序 。
    3.4 wxPython模块安装可以在终端通过 pip install wxPython 命令完成 wxPython 模块的安装 , 如下:
    PS C:\> pip install wxPython Collecting wxPythonDownloading wxPython-4.1.0-cp38-cp38-win_amd64.whl (17.9 MB) Requirement already satisfied: numpy; python_version >= "3.0" in c:\develop\python\lib\site-packages (from wxPython) (1.19.1) Requirement already satisfied: six in c:\develop\python\lib\site-packages (from wxPython) (1.15.0) Requirement already satisfied: pillow in c:\develop\python\lib\site-packages (from wxPython) (7.2.0) Installing collected packages: wxPython Successfully installed wxPython-4.1.0 PS C:\> 3.5 wxPython简单示例一、示例代码:
    # 文件名:example_wxPython.py import wxapp = wx.App(False) frame = wx.Frame(None, -1, title="wxPython", size=(400,160))wx.StaticLine(frame, size=(400, 1))wx.StaticText(frame, -1, "这是一个wxPython应用程序!", pos=(80, 40))frame.Show(True) app.MainLoop()二、示例运行效果:
    Python GUI编程之Python GUI库综述文章插图
    4 基于Qt的PyQt4.1 PyQt简介Qt是一款非常优秀和知名的C++应用程序开发框架 , 广泛用于开发跨平台GUI库 , 它体系庞大、接口丰富、文档齐全 。
    PyQt提供了对 Qt C++ GUI类库封装的Python绑定 , 可以Python模块的方式提供给开发者使用 。 借助PyQt , Python开发人员可以很方便地创建各种美观、复杂、功能强大的跨平台的GUI应用程序 。
    PyQt是一款自由软件 , 其开发者是英国的“Riverbank Computing”公司 。 它提供了GPL与商业许可两种授权方式:个人可以免费地用于自由软件的开发 , 同时又可以提供良好的商业支持 。 PyQt已经发展了很多年 , 技术比较成熟稳定 , 技术文档也比较丰富 , 具备靠前的影响力 。 PyQt3支持Qt1到Qt3;PyQt4支持Qt4;PyQt5支持Qt5 。
    项目信息:
    (1)项目主页:
    (2)项目(PyPI)网址:
    Python GUI编程之Python GUI库综述文章插图
    (3)项目最新版本:v5.15.0(2020/06/01)
    4.2 PyQt特点