一、Qt 介绍

1. Qt是什么?

Qt是一个跨平台的 C++ 开发库,主要用来开发图形用户界面(Graphical User Interface,GUI)程序,当然也可以开发不带界面的命令行(Command User Interface,CUI)程序。

2. Qt可以做什么

Qt 虽然经常被当做一个 GUI 库,用来开发图形界面应用程序,但这并不是 Qt 的全部;Qt 除了可以绘制漂亮的界面(包括控件、布局、交互),还包含很多其它功能,比如多线程访问数据库图像处理音频视频处理网络通信文件操作等,这些 Qt 都已经内置了。
在这里插入图片描述

3. Qt优势

  • 1、跨平台。我们编写的一套程序,若没有极其特殊的要求,通过更改编译步骤,是可以在其他嵌入式或者linux界面上被支持的,所以Qt可以算是MFC的一个超集。这对于很多嵌入式程序员来说可以说是一个福利。
  • 2、面向对象。模块化程度高,重用性好;使用相对安全的信号与槽机制来代替回调函数,各个函数之间的协调更加灵活。
  • 3、丰富的APl。我们所需要的库,在其API中都可以找到,并且有很高的集成度,不仅速度快并且简单易用。
  • 4、帮助文档丰富。我们在使用库函数时,并不是每个函数都可以清楚记得作用及用法,此时Qt的帮助文档可以帮助我们解决此问题。
  • 5、高效的图形界面。Qt支持2D/3D图形渲染,并且支持OpenGL。

4. Qt资源下载

Qt 官网有一个专门的资源下载网站,所有的开发环境和相关工具都可以从这里下载,具体地址是:https://download.qt.io
(1)主页资源介绍
在这里插入图片描述
(2)archive 目录
在这里插入图片描述
(3) qt目录内选择一个版本,最终进入安装包下载目录,各安装包说明如下:
在这里插入图片描述

二、Qt安装

1. 安装说明

Qt安装较为简单,不过时间有些长,安装时注意下面几点便好。

2. 登录Qt

(1)选择登录:这里需要先用邮箱注册,注册完成后填写账号信息,点击Next。
(2)选择不登录:断掉网络,然后重新安装。这一步就会自动跳过去。
在这里插入图片描述

3. 选择路径

自定义的Qt的安装路径不要包含中文字符或其他非ASCII码字符。
在这里插入图片描述

4. 选择组件

按需安装,以下是最小的安装方式。至少确保磁盘空间有10个G。
在这里插入图片描述

三、Qt项目创建

1. 打开Qt Creater

在这里插入图片描述
在这里插入图片描述

2. 新建项目

(1)点击 New Project
(2)文件 - 新建文件或项目
在这里插入图片描述

3. 选择项目类型

(1)Application - Qt Widgets Application - Choose
在这里插入图片描述

4. 选择项目路径

(1)填写项目名称(英文),作为项目的根目录。
(2)选择项目路径(英文),作为项目根目录所在路径。
在这里插入图片描述

5. 选择构建系统

(1)qmake
在这里插入图片描述

6. 选择主类

(1)Base class 基类选择 QWidget
(2)勾选 Generate form。自动生成UI界面。
(3)修改主类名称 Class name
(4)下一步
在这里插入图片描述

7. 选择编译器

在这里插入图片描述

8. 版本控制

(1)选择版本控制系统,比如Git。
(2)可以不选,None。
(3)完成。
在这里插入图片描述

9. 项目创建完成

系统自动生成一个简洁的项目模板,包含以下重要文件:
main.cpp
widget.cpp
widget.h
.pro
在这里插入图片描述

10. 编译运行程序

(1)点击程序左下角的在这里插入图片描述,自动编译并运行程序

在这里插入图片描述
成功后弹出一个GUI空白程序。
在这里插入图片描述
点击右上角的×关闭程序。

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

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

相关文章

基于注意力机制的方法预测的体重

我们有一些已知的身高(作为键 K K K)和对应的体重(作为值 V V V)。现在,我们想使用一种基于注意力机制的方法来“查询”一个特定身高(比如 170cm)对应的体重。虽然这通常不是注意力机制的典型…

Modbus TCP 进阶:基于以太网的远程设备控制(一)

Modbus TCP 基础回顾 ** 在工业自动化领域,Modbus TCP 是一种广泛应用的通信协议,它基于以太网,为设备之间的通信搭建了桥梁,实现了远程设备的高效控制。Modbus TCP 是 Modbus 协议家族中的一员,它在传统 Modbus 协议…

linux魔术字定位踩内存总结

0,数据被改写时我们需要怎么定位,我们首先需要确认数据是逻辑上被改写还是踩内存被改写的。 1,当数据被踩时,也就是出现数据异常时,并且可以稳定复现时,我们确认时踩固定内存时,我们可以使用魔术字定位问题。 代码举例查看确认。 #include <stdio.h> #include…

浅谈Docker Kicks in的应用

正因为传统部署的麻烦&#xff0c;我们希望减少整个安装过程&#xff0c;将其简单化&#xff0c;以下介绍两个思路&#xff1a; 思路一&#xff1a;安装 Docker 后安装 Ghost&#xff0c;并且直接暴露 80 端口&#xff0c;此时所有请求由 Docker 内的 Express 服务器处理&…

【Rust + Actix Web】现代后端开发:从零构建高并发 Web 应用

目录 项目概述环境准备项目创建与依赖配置系统架构设计核心代码实现1. 数据库模型 (src/models.rs)2. 应用状态管理 (src/state.rs)3. 核心业务逻辑 (src/handlers.rs)4. 主应用入口 (src/main.rs) 高并发优化策略1. 异步处理模型2. 连接池配置优化3. 缓存策略设计 性能测试结果…

2025java面试题整理通俗易懂好记

一、Java 基础 1. JVM 相关 Q&#xff1a;什么情况下会发生栈内存溢出&#xff1f; A&#xff1a;就像食堂打饭窗口前排队&#xff0c;队伍太长&#xff08;方法调用层级太深&#xff09;&#xff0c;或者每个人占的位置太大&#xff08;局部变量太多&#xff09;&#xff0c;…

内存分配算法(系统分配算法~应用常见算法)

一、内存碎片 内部碎片与外部碎片 内部碎片&#xff1a;指已分配给进程但未被实际利用的内存空间&#xff0c;属于​​已分配内存内部的浪费​​。 外部碎片&#xff1a;内存中​​零散分布的空闲小空间​​&#xff0c;总量足够但无法合并为大块以满足连续内存请求。 内部碎…

缓解停车难的城市密码:4G地磁检测器如何重构车位资源分配

城市停车难&#xff0c;是困扰车主和管理者的双重痛点。寻找车位耗时耗力&#xff0c;人工计时收费易生纠纷&#xff0c;传统管理模式效率低下。而 4G地磁检测器 的出现&#xff0c;正悄然改变这一局面。它如同埋入城市道路的“感知神经元”&#xff0c;通过4G地磁检测器 的精准…

【网工|查缺补漏】存储与RAID技术①

目录 ■存储基础 ▲存储系统层次结构 ▲存储介质选择 ▲硬盘接口 ■传统RAID技术 ▲RAID数据组织及存取方式 ▲RAID热备与重构 ▲常用RAID技术 ■RAID2.0技术 ▲RAID2.0技术优势 ■网络存储体系DAS/NAS/SAN ▲DAS (Direct Attached Storage) ▲FC SAN (Fiber Chan…

ESP官网的使用手册网址

LED Control (LEDC) — Arduino-ESP32 2.0.14 documentation (readthedocs-hosted.com) 中文网站&#xff1a;红外遥控 (RMT) - ESP32 - — ESP-IDF 编程指南 v5.4.2 文档 (espressif.com)

网络基础知识与代理配置

网络基础知识 OSI七层模型与协议对应 OSI层功能典型协议应用层网络服务接口&#xff0c;为应用程序提供网络服务HTTP, HTTPS, FTP, SMTP, DNS, Telnet, SSH表示层数据格式化、代码转换、数据加密解密SSL/TLS, JPEG, GIF, ASCII, 压缩算法会话层建立、管理和终止会话连接NetBI…

Windows 疑难杂症集 - MsMpEng.exe 磁盘占用率持续高占

本系列记录日常使用中遇到的一些问题及处理方法。系统环境为 Windows 10&#xff0c;但可能也适用于 Windows11&#xff0c;甚至也会包含部分 Windows7 等老系统环境。 有的时候感觉系统异常卡顿&#xff0c; CtrlShiftEsc 打开任务管理器&#xff0c;看到某个磁盘居然IO达到了…

《UE5_C++多人TPS完整教程》学习笔记40 ——《P41 装备(武器)姿势(Equipped Pose)》

本文为B站系列教学视频 《UE5_C多人TPS完整教程》 —— 《P41 装备&#xff08;武器&#xff09;姿势&#xff08;Equipped Pose&#xff09;》 的学习笔记&#xff0c;该系列教学视频为计算机工程师、程序员、游戏开发者、作家&#xff08;Engineer, Programmer, Game Develop…

【HarmonyOS】鸿蒙使用仓颉编程入门

【HarmonyOS】鸿蒙使用仓颉编程入门 一、前言 仓颉&#xff0c;是华为自研的一款面向全场景智能的新一代编程语言&#xff0c;是为鸿蒙量身打造的全场景智能应用编程语言&#xff0c;作为鸿蒙生态中的重要组成部分&#xff0c;旨在支持鸿蒙系统下的全场景应用开发 &#xff0…

2.3.1 Nginx Web服务器安全加固

文章目录 一、试题及考试说明二、操作步骤1. 启动Nginx服务2. 隐藏站点 Response Header 里的Web服务版本信息&#xff08;见下总图&#xff09;3. 隐藏站点 Response Header 里的X-Powered-By 字段&#xff08;见下总图&#xff09;4. Nginx访问日志存放位置修改为/opt/bak/ac…

红色背景政府当讲PPT模版

政府党建PPT模版&#xff0c;庆国庆PPT模版&#xff0c;国庆节PPT模版 红色背景政府当讲PPT模版&#xff1a;https://pan.quark.cn/s/a6f484905430

JavaScript对象(Object)常用操作

创建对象 //使用对象字面量、构造函数或者Object.create()方法来创建对象// 对象字面量 const person {name: John,age: 30,hobbies: [reading, swimming] };// 构造函数 function Car(make, model) {this.make make;this.model model; } const myCar new Car(Toyota, Cor…

Java面试宝典:基础一

⚙️ 1. Java跨平台原理&#xff08;字节码文件与JVM&#xff09; 核心机制&#xff1a; Java源程序&#xff08;.java&#xff09;编译为与平台无关的字节码文件&#xff08;.class&#xff09;&#xff0c;而非直接生成机器码。字节码由**Java虚拟机&#xff08;JVM&#xf…

uniapp微信小程序:editor组件placeholder字体样式修改

一、问题描述 微信小程序editor组件的placeholder字体默认为斜体字&#xff0c;官方对此没有属性可以设置它的样式&#xff0c;并且直接在组件上设置样式也是无效的。 二、解决方案 通过审查节点&#xff1a; 可以看到editor的placeholder其实是在一个伪元素上。 在页面或者…

PhoneRescue 4.3绿色版!解决iPhone数据丢失、系统崩溃等场景

目录 一、引言二、软件介绍1. 研发背景与定位2. 兼容性与技术优势 三、功能介绍1. 数据恢复功能&#xff08;核心痛点解决方案&#xff09;2. 系统修复功能3. 数据管理辅助 四、软件特色1. 操作极简&#xff0c;零技术门槛2. 安全可靠&#xff0c;零数据风险3. 高效精准&#x…