【Qt系列教程】一、认识Qt、安装Qt、运行Hello Qt

文章目录

  • 1.1 Qt 简介
  • 1.2 Qt 的安装
  • 1.3 编写 Hello World

1.1 Qt 简介

Qt(官网:https://www.qt.io)于1995年5月首次公开发布,是一个跨平台的应用程序开发框架,也是最主流的 C++ 开发框架;

Qt 具有其他编程语言的扩展,但其本身是用 C++ 开发的。

在这里插入图片描述

Qt 支持的开发语言:

  • C++ 和 QML:
    • Qt 对标准 C++ 语言进行了扩展,引入了信号与槽等机制;
    • QML(Qt Meta Language)是一个用来描述应用程序界面的声明式脚本语言;
    • C++ 和 QML 可以混合使用。
  • Python:
    • Qt C++ 可以被转换 Python 绑定,使用 Python 调用 Qt 类库进行 GUI 程序开发;
    • 常用的 Qt 类库 Python 绑定有:PyQt(GPLv3 许可)和 PySide(LGPLv3 许可)。

2020年12月正式发布了 Qt6.0,引入的主要新特性包括:

  • 支持C++17标准;
  • Qt 核心库的改动:新的属性和绑定系统;全面支持Unicode字符串;修改了 QList 的实现方式,将 QVector 类和 QList 类统一为QList 类;QMetaType 和 QVariant 几乎被重写;
  • 新的图形架构:Qt5 中 3D 渲染依赖 OpenGL。Qt6 中引入了新的技术 RHI(rendering hardware interface),它是一个抽象层,使得 Qt 可以使用平台本地化的 3D 图形 APl(Linux:Vulkan、 Windows:Direct 3D、 MacOS:Metal);
  • CMake 构建系统:Qt6 仍然支持 qmake 但建议使用 CMake;
  • 其他(多媒体、网络、Qt Quick 3D 等模块的改进)。

1.2 Qt 的安装

Qt6 如何安装?

在线安装包下载地址:official_releases / online_installers

[Step 1]: 如下图,点击 qt-unified-windows-x64-online.exe 进行下载

作者下载的版本为:qt-online-installer-windows-x64-4.8.0.exe

[Step 2]: 点击 register 进入 Qt 账号注册页面,并填写相关信息

[Step 3]: 进入 .exe 所在目录,执行如下命令(指定镜像源)开始安装 Qt,默认安装即可(可自定义安装目录)

qt-online-installer-windows-x64-4.8.0.exe -mirror https://mirrors.tuna.tsinghua.edu.cn/qt/
qt-online-installer-windows-x64-4.8.0.exe --mirror https://mirrors.aliyun.com/qt

在这里插入图片描述
[Step 4]: 勾选 Archive 再点击 筛选 即会从远程存储库中检索信息,才会出现 Qt 6.2.0,目前只需勾选 MinGW 8.1.0 64-bit,后续添加或删除可通过 MaintenanceTool.exe 操作
在这里插入图片描述
安装过程大概持续三四十分钟,可以在安装目录下看到 MaintenanceTool.exe

1.3 编写 Hello World

Qt Creator简介:

  • Qt Creator 为应用程序开发人员提供了一个完整的跨平台、集成开发环境(IDE)以便为桌面、嵌入式和移动设备平台(如 Android和 iOS)创建应用程序;
  • Qt Creator 提供了在整个应用程序开发生命周期所需的工具,从创建项目到将应用程序部署到目标平台。

[Step 1]: 新建一个GUI 项目,文件 -> New Project -> Application(Qt) -> Qt Widgets Application -> 选择
在这里插入图片描述
[Step 2]: Project Location - 自定义项目位置

[Step 3]: Define Build System - 选择构建系统
在这里插入图片描述
[Step 4]: Class Information - 选择基类
在这里插入图片描述
Base class 中的三个选项:

ClassFunction
QMainWindow主窗口类,包括菜单栏、工具栏、状态栏
QWidget可以创建一个空白的窗口,是所有界面组件的基类
QDialog对话框类

[Step 5]: Translation File - 翻译文件,这里并不需要,直接点击 Next
在这里插入图片描述
[Step 6]: 选择构建套件

[Step 7]: Project Management - 项目管理

[Step 8]: 项目界面如下

[Step 9]: 双击 widget..ui,拖动 Label 并写入 Hello Qt,也可以调整字体大小
在这里插入图片描述
[Step 10]: 使用快捷键 Ctrl + R 运行即可弹出窗口

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/21334.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【全开源】考试答题系统源码(FastAdmin+ThinkPHP+Uniapp)

一款基于FastAdminThinkPHPUniapp开发的小程序答题考试系统,提供全部前后台无加密源代码,支持私有化部署。 📝考试答题系统:便捷高效的学习新选择💡 📚 考试答题系统是什么? 考试答题系统&…

【Transformer(7)】Transformer架构解析

一、Transformer结构图 从上图可以看到: Transformer结构主要由编码和解码两大部分组成: (1)输入- position embedding - patch embedding (2)编码器 多头注意力机制 Add & NormMLP Add & Norm &…

怎么判断护眼台灯真的有用吗?揭秘护眼台灯怎么选!

中国目前面临着严重的近视问题,各学段学生的近视率普遍偏高,且高度近视的占比也不容忽视。这不仅对学生的身体健康构成威胁,也对国家的经济社会可持续发展和国家安全构成潜在风险。随着时代的进步和教育的普及,儿童近视的问题已经…

Ubuntu Todesk远程连接一直卡在100%

关于Todesk远程Linux卡在连接服务器的解决方案 在网上看到很多篇文章都说改硬解码什么的 反正我试过是没用 下面是我的解决方案 编辑下面的文件 sudo vim /etc/gdm3/custom.conf 这里如果大家不会使用 vim 退出 1. 按一下ESC键 2. 同时按住shfit: 3. 输入wq 4. 回车重启系…

植物大战僵尸杂交版全平台 PC MAC 安卓手机下载安装详细图文教程

最近植物大战僵尸杂交版非常的火,好多小伙伴都想玩一玩,但作者只分享了 win 版,像手机还有MAC电脑都没有办法安装,身为 MAC 党当然不能放弃,经过一番折腾,也是成功在所有平台包括手机和MAC电脑都成功安装上…

新闻发稿:8个新闻媒体推广中最常见的错误-华媒舍

在数字时代,新闻媒体的推广手段已经越来越多样化。许多媒体在推广过程中常常会犯下一些常见错误。本文将会介绍八个新闻媒体在推广中最常见的错误,并希望能够帮助各位更好地规避这些问题。 1. 缺乏明确的目标受众 在进行推广前,新闻媒体需要…

有钱还系统源码,人人还众筹还钱模式还贷系统源码

盈利模式: 1.系统里直推400 2.间推得200 3.升级是隔代匹配200 4.漏单直接设置归系统 5.九级匹配不到直接归平台 有钱还平台新注册会员,即新入的负债者要分9次分别资助先来的11名负债者每人200元,这笔资助不是一次性给到对方&#xff0c…

docker学习--最详细的docker run 各子命令解释与应用

文章目录 docker run应用docker run -it那怎样才能退出容器而不用容器关闭呢 docker run -d-p-P--name docker run 容器运行命令 docker run 常见的子命令及其含义 -i 交互式,和-t一起使用 -t 打开一个终端 -d 后台运行 -p/-P 暴露容器中的服务端口 –name 指定容…

速通systemverilog

这里写目录标题 一、systemverilog的大部分新语法logicalways_combunique_casepriority casealways_fftypedefstructenumunioninterface 二、实现流水灯三、全加器以及仿真 一、systemverilog的大部分新语法 logic always_comb unique_case priority case case中常量和变量互…

对HTTP和HTTPS的介绍

HTTP HTTP 是什么? HTTP (全称为 “超⽂本传输协议”) 是⼀种应⽤⾮常⼴泛的 应用层协议. 所谓 “超⽂本” 的含义, 就是传输的内容不仅仅是⽂本(⽐如 html, css 这个就是⽂本), 还可以是⼀些其他的资源, ⽐如图⽚, 视频, ⾳频等⼆进制的数据 HTTP 往往是基于传输层…

重学java 52.Collections集合工具类、泛型

"我已不在地坛&#xff0c;地坛在我" —— 《想念地坛》 24.5.28 一、Collections集合工具类 1.概述:集合工具类 2.特点: a.构造私有 b.方法都是静态的 3.使用:类名直接调用 4.方法: static <T> boolean addAll(collection<? super T>c,T... el…

YOLOv10(1):初探,训练自己的数据

目录 1. 写在前面 2. 值得关注的点 3. 训练自己的数据集 4. 阅读代码的小建议 1. 写在前面 很多人YOLOv9还没有完全研究透&#xff0c;YOLOv10出来了。 惊不惊喜&#xff0c;意不意外&#xff01; 据论文里提到&#xff0c;YOLOv10就是为了加速推理&#xff0c;在保证精度的…

深入分析 Android BroadcastReceiver (二)

文章目录 深入分析 Android BroadcastReceiver (二)1. 深入理解 BroadcastReceiver 的高级使用和优化2. 有序广播&#xff08;Ordered Broadcasts&#xff09;2.1 实现有序广播 3. 粘性广播&#xff08;Sticky Broadcasts&#xff09;3.1 使用粘性广播 4. 本地广播&#xff08;…

VSCode插件Sort Lines

Sort Lines是一款VSCode中的扩展&#xff0c;可以帮助你对所选文本或整个文件中的行进行排序。可以给你按字母大小排序&#xff08;升序、降序&#xff09;&#xff0c;也可以进行排序去重。而且还能将所有文本打乱顺序。做短文本分类的训练&#xff0c;清洗数据集的时候&#…

汽车IVI中控开发入门及进阶(二十五):CVBS视频流

前言: AHD和CVBS是两种视频格式,在车载摄像头中,有支持传统CVBS模拟视频的摄像头,也有支持新的高分辨率AHD格式的摄像头。 CVBS视频是经典的模拟视频格式,在视频经常显示在小型监视器上的车辆上仍然最受欢迎。如果想要车辆的最大分辨率,可选择AHD格式,即高分辨率模拟视…

VRRP联动BFD的相关配置

今天就与大家分享VRRP联动BFD的相关配置&#xff0c;同时也会演示一下没有BFD的情况下&#xff0c;又是如何呢&#xff1f;前后做个对比&#xff0c;只要把情况了解清楚了&#xff0c;初学者才能更加深刻地掌握它。 一、实验拓扑图 二、配置思路 我们在做任何事情&#xff0c…

CTF中的命令执行绕过方式

引言 不论在CTF还是实战中&#xff0c;命令执行的场景五花八门&#xff0c;那么往往在一些小型比赛中&#xff0c;会以那种PING接口进行getflag操作。 0x01&#xff1a;管道符 在用linux命令时候,我们可以一行执行多条命令或者有条件的执行下一条命令&#xff0c;下面我们讲解…

24.6.2(动态开点线段树)

星期一&#xff1a; cf edu round 36 E cf传送门 题意&#xff1a;1到n天初始全为工作日&#xff0c;有两种操作&#xff0c;将 l-r 区间变为 工作日/休息日&#xff0c;每次操作后询问剩余总工作日有多少 思路&…

假指纹与活体指纹检测

目录 1. 假指纹简介 2. 假指纹制作流程 3. 活体指纹检测 4. 活体指纹检测竞赛 1. 假指纹简介 随着科学技术的发展&#xff0c;指纹技术以各种各样的形式进入了我们的生活。在大多数情况下&#xff0c;指纹识别应用于移动设备和桌面设备解决方案&#xff0c;以提供安全方便的…

android高效读图方式——Hardwarebuffer读图

安卓上有许许多多使用OpenGL来渲染的原因&#xff0c;比方说做特效/动画/硬解/人脸识别等等。渲染完成后如何从gpu中把数据快速读取出来也是高效图像处理中的重要的一环。 相对于glReadPixel的同步读取方式&#xff0c;安卓GLES3.0提供了更高效快速的Hardwarebuffer读图方式&a…