PyQt/PySide6快速入门 - 2 使用QWidget设计GUI

上一篇: PyQt/PySide6快速入门 - 1 安装,配置,打包成exe

image.png

设计GUI,大家首先想到的是拖放一个个控件,然后设置属性,再响应对应的操作,收发数据,类似于静态HTML。
其实前端流行趋势早就用动态HTML,诸如大家熟悉的Vue.js、Angular等前端框架。Qt GUI设计也响应这种潮流,早就推出了QML(Qt 描述性语言),使用更方便、更直观,以后会以QML为主流,我们放到下一讲介绍。
但首先,还是先从QWidget入手,毕竟是基础,需要了解控件、布局、信号与槽函数。

此类教程已很多,我就不重复了。推荐学习最新支持Qt6的:

PyQt6 中文教程 (gitbook.io)

对应英文版目录在这里:
Table of contents

PySide6官方文档 https://doc.qt.io/qtforpython-6/

由于PySide与PyQt基本上是可替换的,先学习哪种都行。

下一步,开发完整的小应用来练手

比如上位机软件、桌面闹钟等。
比如 桌面小宠物

  • 头条上学到的,已改成qt6代码:https://github.com/kevinqqnj/desktop-pet
  • 功能:
    • 随机更换图片和文字
    • 无边框透明窗口
    • 可拖拽
    • 在系统托盘显示
    • 自定义右键菜单
  • 可以用nuitka打包成.exe文件,16MB左右
image.png

下一集预告

QML offers an alternative approach to create User Interfaces, compared to Widgets, and it was originally motivated from mobile applications development. Together with the Qt Quick module, it provides access to interact with mobile device using actions like taps, drag and drop, animations, states, transitions, drawer menus, etc.

  • Widget主要集中在金融、军工、安防、航天、船舶、教育等领域,qml主要集中在汽车仪表、车机、直播等领域。
  • 如果应用是用手指操作,那么用 QML 更合适,如果是用鼠标操作,那么用 Widget 更合适
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容