龙空技术网

Python图形用户界面纯手搓?Pygubu 组件拖拽,轻松画出你的应用

Adair品科技 271

前言:

如今兄弟们对“python编写的软件界面”大体比较重视,你们都想要学习一些“python编写的软件界面”的相关文章。那么小编同时在网上搜集了一些对于“python编写的软件界面””的相关资讯,希望看官们能喜欢,咱们一起来学习一下吧!

传统写Python代码时,我们都是在终端运行和交互的,但如果你想高级一些,像软件或APP一样有交互界面的话,你搜索的第一个答案多半是Tkinter,作为Python 的标准 GUI (Graphical User Interface, 图形用户界面)库,使用 Tkinter 的确可以创建 GUI 应用程序,而且UI效果的话还行。

如果只有一些非常基础或简单几个页面,Tkinter的使用感受还好。但如果交互界面比较复杂,布局有要求,或者页面较多的话,使用纯代码的方式生成UI确实有点反人类。

Pygubu-Designer 是一个用于快速开发 Python tkinter 模块用户界面的 RAD(Rapid Application Designer, 快速应用程序开发)工具。它允许用户通过图形界面设计器轻松创建和编辑 tkinter 应用程序的用户界面,并将设计保存为 XML 文件,然后直接在应用程序中动态加载和使用即可。也就是说再复杂的UI也不用抽象你代码设计了,只要拖拽组件画出来即可。

Pygubu目前分为核心库和设计库,安装很方便,标准的两条pip命令搞定。

安装好后,我们将python的Scripts目录加到系统PATH,或者完整路径启动XXXX\Scripts\pygubu-designer.exe就能打开UI设计界面了。

Pygubu-Designer界面非常简单,左右是Tkinter支持的组件,包括表单、控件、容器、控件及显示、菜单。再往右是UI结构树,再往右是界面预览。最右侧是每个组件的属性设计。用起来和VB比较像。设计好我们需要的交互页面后,我们将其导出为UI文件。从格式上可以看出,之前设计好的交互页面就变成了一个XML文件。

接着我们把在python代码中导入这个文件,即可使用了。其实就是将原来我们完全通过代码“黑盒”写出来的UI,直接通过设计器直观画出来,然后生成xml文件,再导入到python中使用。

对于前端当中的具体内容显示,交互等,只需要通过self.builder来获取相当组件id,然后设计其值就能完成交互和操作了。好了,相比于官方自带的tkinter,Pygubu-Designer可以说是大大降低了代码量,而且整个操作也是非常快捷方便。如果你也有Python GUI开发需求,可以试试。

标签: #python编写的软件界面