一.PyQt6简介
PyQt:PyQt是一个功能强大且成熟的GUI框架,基于Qt库。它提供了丰富的组件、布局和主题选项,以及强大的功能和灵活性。PyQt的优点是它具有现代化的外观和丰富的功能,适用于复杂的GUI应用程序。然而,由于PyQt的许可证问题,您需要确保在使用之前了解和遵守相关的许可条款。
PySide6:PySide6是Qt的另一个Python绑定,与PyQt类似,但使用了更宽松的许可证(LGPL)。它提供了与PyQt相似的功能和API,因此如果您熟悉PyQt,可以很容易地切换到PySide6。与PyQt相比,PySide6的社区支持可能相对较少,但它仍然是一个可行的选择。
PyQt6和PySide6它们是由不同的组织开发和维护的。PyQt6是由Riverbank Computing开发和支持的,提供了与Qt C++版本相似的功能和API,并且与Qt官方的兼容性很高。PySide6是由Qt公司(The Qt Company)开发和支持的,是Qt官方推荐的Python绑定库,与Qt框架紧密集成,具有与Qt C++版本的高度兼容性
二.PyQt6对比PyQt5
2.1PyQt 6 的优势
2.1.1全新的 Qt 框架
PyQt 6 是基于 Qt 6 框架开发的,而 Qt 6 在原有基础上进行了大量改进,提供了更高的性能、更好的可扩展性和更丰富的功能。
这使得 PyQt 6 在性能和功能上都有所提升
2.1.2更简洁的 API
PyQt 6 对 API 进行了优化,使得开发者能够更轻松地编写代码。
例如,在 PyQt 5 中,创建一个 QPushButton 需要调用多个构造函数。
而在 PyQt 6 中,只需一行代码即可完成创建
2.1.3更好的模块化
PyQt 6 将模块进行了重新组织,使得查找和使用特定的功能更加容易。
例如,在 PyQt 5 中,Qt 网络相关的功能分布在不同的模块中。
而在 PyQt 6 中,所有网络相关的功能都集中在PyQt6.QtNetwork模块中
2.1.4 更丰富的组件库
PyQt 6 提供了更多的组件,使得开发者能够更轻松地创建具有丰富功能的应用程序。
例如,新增的QML模块提供了一种基于 JavaScript 的声明式 UI 描述语言,可以用来创建高性能、轻量级的 UI。
2.1.5 更好的跨平台支持
PyQt 6 在各个平台上的表现都得到了优化,包括 Windows、macOS、Linux、Android 和 iOS。
这意味着开发者可以更容易地创建跨平台应用程序。
2.1.6 向后兼容
PyQt 6 在保持向后兼容的同时,提供了许多新特性和改进
这意味着开发者可以轻松地将现有的 PyQt 5 项目迁移到 PyQt 6
三.PyQt6库和工具库QTDesigner安装
安装pyqt6和pyqt6-tools
pyqt6-tools库是QTDesigner设计器工具支持库
pip install PyQt6 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pyqt6-tools -i https://pypi.tuna.tsinghua.edu.cn/simple
四.pycharm配置外部工具
4.1配置QTDesigner
点击’+',创建工具
Name写QTDesigner
找到对应的designer.exe路径
4.2配置PYUIC
PYUIC是用于将designer生成的ui文件转换成py文件
再点击’+',创建工具
-m PyQt6.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
$FileDir$
4.3验证安装是否成功