分类 Qt 下的文章

静态设计时操作布局:

左侧:组件面板
中上:可视化待设计的预览
右上:对象检查器,可以看到其中所有的控件
右下:属性编辑器,可以看到类的继承关系。属性可能是从父类继承过来的,所以若有想要修改的属性,要到对应的父类(也可能是当前类所定义)去找
中下:信号和槽,Action编辑器

.pro是项目管理文件,代码的含义如下:

QT+=core gui // 包含core和gui模块
greaterThan(QT_MAJOR_VERSION, 4): QT+=widgets // 超过4版本就加上widgets
CONFIG+=c++17 // 通用配置选项,加上c++
SOURCES+=main.cpp\widget.cpp // 源文件
HEADERS+=widget.h // 头文件
FORMS+=widget.ui // UI文件

qnx: target.path=/tmp/$${TARGET}/bin // $$用于替换函数的前缀
else: unix:!android: target.path=/opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS+=target

qmake用于构建项目,根据.pro文件生成makefile文件,然后C++编译器可以根据makefile文件进行编译和链接
MOC: meta-object compiler meta层编译器,meta层是在C++基础上封装的层次结构
UIC: user interface compiler 用户接口编译器
qmake自动生成MOC和UIC构建规则,将代码编译为底层二进制

  1. 支持C++17标准
  2. 核心库变化:
    2.1 新的属性和绑定系统;
    2.2 支持unicode字符串;
    2.3 QVector和QList统一为QList类
  3. 新的图形架构:在OpenQL的基础上加入RHI,使得Qt可以使用本地的3D图形API,例如Linux的Vulkan、Windows的Direct 3D、MACOS的Metal
  4. 仍然支持qmake,但建议使用CMake
  5. 多媒体、网络、Qt Quick 3D模块的改进