Qt Designer 和 Python:更快地构建您的 GUI 应用程序
Designer 旨在为创建 PyQt5 应用程序提供一个轻量级但功能强大的解决方案。
它使得通过拖放创建 GUI 应用程序成为可能。 它基于使用 Qt Designer 的 Qt 框架 ,Qt Designer 是一个可视化布局和表单编辑器。
对于那些熟悉 Python GUI 编程的人来说,您可能已经使用过 tkinter GUI 库。
PyQt 应用程序可以用多种方式编写: 纯 Python 、QML(及其工具)或 Qt Designer 的形式。
PyQt Designer 的一些好处:
- 生成的代码完全是 Pythonic 的。
- 它利用了最新的 Python 特性,例如装饰器、生成器和 Lambda。
- 它使用 Python 3。
- 它使用 Qt 样式和主题来最大程度地与您的应用程序设计保持一致。
- 它可以生成兼容 Qt4 和 Qt5 的代码。
它具有一个简单而强大的表单编辑器,允许非程序员有效地创建复杂的布局。
您可以将 PyQt 与任何 IDE 一起使用,包括 PyCharm 或仅来自 vim。
如果您是 PyQt 的新手,我推荐这门课程:
使用 Python PyQt5 创建桌面应用程序
什么是Qt Designer
Qt Designer 是一个图形用户界面 (GUI) 布局和表单编辑器,它是 Qt Framework 的一部分。
Qt Designer 是设计 用户界面 的强大工具。它的主要目的是创建可以在用 C++ 编写的应用程序中编译和使用的小部件和 GUI 布局规范。然而,Qt Designer 也完全能够 为 Python 应用程序生成代码 。
什么是 PyQt?
PyQt 是一组 用于 Qt 跨平台 GUI 框架的 Python 绑定 。它为 Python 应用程序提供了一种快速创建与使用 Qt Designer 构建的用户界面非常相似的用户界面的方法。
PyQt 还包括用于部署用 Python 编写的应用程序的工具。然而,它并没有试图隐藏它生成 Python 代码或者它不如本地编写的 Python 应用程序那么快的事实。
虽然 PyQt 应用程序通常比它们的替代应用程序更快,但它们无法与整个应用程序都用 C++ 编写的本机应用程序相提并论。
Qt Designer还是 Python?
GUI 构建器生成的代码与手动PyQt 代码之间 存在许多差异,这是 Qt 的优势之一:您可以选择最适合每种情况的代码。
当然,在某些情况下,现有的 Qt Designer UI 可以轻松转换为 Python 代码。但也有一些情况直接用 Python 编写是有意义的。
你什么时候应该使用什么?
大多数 GUI 代码应该使用 GUI 生成器创建。这是因为 GUI 构建器提供了一种方便、可视化的方式来保持所有元素对齐,并在构建时查看 GUI 的整体结构。
GUI 构建器还为您管理布局,因此您无需担心在实际将每个元素绘制到屏幕上时尝试计算出每个元素与所有其他元素相比应该有多大。
加载ui文件
.ui 文件是 XML 文件,其中包含用户界面定义以及界面内小部件的布局。
为了在您的代码中直接使用 Qt Designer .ui 文件,您需要使用 Python 从 .ui 文件加载数据。您可以使用简单的 Python 脚本或更复杂的程序来完成此操作。
PyQt-Python 使使用 Python 创建 GUI 应用程序变得容易。但是,如果您想在代码中直接使用 Qt Designer .ui 文件,则需要使用 Python 从 .ui 文件加载数据。您可以使用简单的 Python 脚本或更复杂的程序来完成此操作。
from PyQt5 import QtWidgets, uic
import sys
class Ui(QtWidgets.QMainWindow):
def __init__(self):
super(Ui, self).__init__()