Qt:(创建项目)

目录

1. 使⽤QtCreator新建项⽬

1.1  新建项⽬

1.2  选择项⽬模板

1.3  选择项⽬路径

1.4 选择构建系统

1.5 填写类信息设置界⾯ 

​编辑

1.6 选择语⾔和翻译⽂件

1.6 选择Qt套件

1.7 选择版本控制系统

1.8 最终效果


1. 使⽤QtCreator新建项⽬

1.1  新建项⽬

打开QtCreator,在菜单栏中选中:"⽂件"--------> "新建⽂件或项⽬";或者使⽤快捷键:Ctrl+ n;或者直接点击:"new";

在欢迎模式下,直接点击New,如下图⽰:

1.2  选择项⽬模板

新建项⽬对话框⾥有五类项⽬模板:

项⽬模板说明
ApplicationQt 应⽤程序,包括普通窗体程序和QtQuick程序
可以创建动态库、静态库以及QtQuick扩展插件、QtCreator⾃⾝插件
其他项⽬可以创建单元测试项⽬、Qt4设计师⾃定义控件、⼦⽬录项⽬等
Non-Qt-Project⾮Qt项⽬。可以创建纯C或纯C++项⽬
导入项目导⼊项⽬。从版本控制系统管理的软件项⽬导⼊旧的项⽬

常⽤的只有第⼀类Application,选择它,在右侧会看到Qt应⽤程序的⼦模板:

  • Qt Widgets Application:普通窗体模板,传统基于部件的窗体界⾯程序。

  • Qt Console Application:Qt控制台应⽤程序。因为Qt主要⽤于图形界⾯设计,这个控制台项⽬ 模板基本不⽤。

  • Qt Quick Application:Qt提供的⼀种⾼级⽤⼾界⾯技术,使⽤它可以⽅便快速的为移动以及嵌⼊ 式设备开发流畅美观的⽤⼾界⾯。QtQuick模块是开发QML应⽤的标准库,提供了使⽤QML创建 ⽤⼾界⾯所需的⼀切,包括可视化、交互、动画、模型、视图、粒⼦效果以及着⾊效果等。

1.3  选择项⽬路径

给Qt项⽬命名及选择保存项⽬的路径;

1.4 选择构建系统

Qt 中的构建⼯具有三种可供选择,分别是:qmakeCMakeQbs,下⾯依次介绍。

Qt官⽅声明,因市场原因,弃⽤Qbs。对于Qt⽤⼾来说,qmake是当前使⽤最⼴泛的构建⼯具, CMake其次。

  • qmake:qmake是⼀个构建⼯具(buildtool),⽤于⾃动⽣成makefile⽂件。qmake⽀持跨平 台构建。qmake编辑的是⼀个后缀名为.pro的⽂件。

  • CMake:CMake是⼀个跨平台的构建⼯具。CMake本⾝不是⼀个编译器,其实就是⽣成⼀个让编 译器能读懂编译流程的⽂件⼯具。让CMake⾃动⽣成构建系统,例如Makefile和VisualStudio 项⽬⽂件。CMake是⼀个第三⽅⼯具,有⾃⼰的⽂档。

  • Qbs:Qbs(QtBuildSuite:Qt构建套件)同qmake、CMake⼀样都是构建⼯具。Qbs号称是新 ⼀代的构建⼯具,⽐qmake编译速度更快。Qbs没有绑定Qt版本,它从项⽬⽂件的⾼级项⽬描述 中⽣成⼀个正确的依赖表。⽽传统的MakeFile⽣成⼯具如qmake和CMake,其在⽣成MakeFile ⽂件后将实际的命令交给Make⼯具去执⾏。

1.5 填写类信息设置界⾯ 

对于基类的选择,⽬前有三种基类:

基类说明
QMainWindow主窗⼝类,⼀般⽤于较为复杂的应⽤程序,除了中央客⼾区界⾯,还包括菜单栏、⼯具栏、 状态栏以及多个可停靠的⼯具对话框等
QWidget最简单、最基本的窗体程序,⾥⾯可以放置多个控件实现程序功能
QDialog基于对话框的程序,对话框⼀般⽤于弹窗,也可以⽤于主界⾯显⽰。对话框是从QWidget继 承⽽来的,并丰富了⼀些功能,如模态显⽰和返回值等

1.6 选择语⾔和翻译⽂件

此处选择的语⾔是"汉语","英语"这样的语⾔.⽽不是"编程语⾔"

由于我们暂时不考虑国际化问题,直接下⼀步即可.

1.6 选择Qt套件

默认只有第⼀个"DesktopQt6.9.0MinGW64-bit",如果安装配置了多个Qt套件,就可以都选上。 Qt 套件是指Qt程序从编译链接到运⾏环境的全部⼯具和Qt类库的集合,对于MinGW版本Qt程序⽣ 成和调试,⾄少需要MinGW中的编译器g++(⾃动调⽤链接器)、g++配套的基础库、调试器gdb还 有使⽤MinGW环境编译⽽成的Qt类库⾃⾝。默认情况下,在上⾯KitSelection⾥选中全部套件。

1.7 选择版本控制系统

点击"下⼀步"进⼊项⽬管理界⾯;在项⽬管理界⾯可以设置作为⼦项⽬,以及加⼊版本控制系统管 理。这两个功能暂时⽤不到,都⽤默认的,然后点击"完成"。

1.8 最终效果

项⽬创建完成之后,QtCreator会直接进⼊代码编辑模式,可以看到类似下图界⾯:

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

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

相关文章

WPF之Slider控件详解

文章目录 1. 概述2. 基本属性2.1 值范围属性2.2 滑动步长属性2.3 刻度显示属性2.4 方向属性2.5 选择范围属性 3. 事件处理3.1 值变化事件3.2 滑块拖动事件 4. 样式和模板自定义4.1 基本样式设置4.2 控件模板自定义 5. 数据绑定5.1 绑定到ViewModel5.2 同步多个控件 6. 实际应用…

mysql索引及数据库引擎

顺序io(不需要每次都磁盘寻址,效率高),随机io(需要每次都磁盘寻址,效率低) 如何正确的创建合适的索引? 索引是一种分散存储的数据结构 磁盘io特性:每次交互是以页为单位&…

网络安全:sql注入练习靶场——sqli_labs安装保姆级教程

网络安全:sql注入练习靶场——sqli_labs安装保姆级教程 前言 sqli-labs靶场是一个开源的sql注入练习的综合靶场,包含大部分sql注入漏洞以及注入方式 网络安全学习者可以通过在sqli-labs靶场练习提升对sql注入的理解,以及学习各种绕过姿势。…

平台介绍-开放API接口-鉴权

平台的理念是一个组织内部只建一套系统。但是现实情况是,组织内部已经建立了很多系统,是不能一次性替代的,只能先搭起平台,然后逐步开始替换。这样就不可避免的存在其他系统和平台进行交互的问题。 平台为此设计了开放API接口。其…

多端定制系统开发:打造高效全平台覆盖的APP解决方案

在移动互联网时代,用户需求日益多样化,企业若想触达更广泛的受众,仅靠单一平台的应用已远远不够。无论是iOS、Android、Web端,还是智能手表、车载设备等新兴终端,多端适配已成为企业数字化转型的刚需。多端定制系统开发…

Linux电源管理(5)_Hibernate和Sleep功能介绍

原文:Linux电源管理(5)_Hibernate和Sleep功能介绍 1. 前言 Hibernate和Sleep两个功能是Linux PM的核心功能,它们的目的是类似的:暂停使用——>保存上下文——>关闭系统以节电>恢复系统——>恢复上下文——>继续使用。 本文…

Spring 命名空间注入:p、c 与 .util 的深度解析

在 Spring 框架的开发过程中,XML 配置是一种常见且强大的方式来管理 Bean。为了让配置更加简洁、易读,Spring 提供了多种命名空间注入的方法,其中 p 命名空间注入、c 命名空间注入和 .util 命名空间尤为重要。本文将详细介绍这三种命名空间的…

RUST变量学习笔记

1,作用域概念 捕获环境 2,所有权概念 Rust则是通过所有权和借用来保证内存安全。很多人不理解为啥说Rust是内存安全的,其实就是在默认情况下,你是写不出内存不安全的代码的。 Rust的所有权并不难理解,它有且只有如下…

探索 Spring AI 的 ChatClient API:构建智能对话应用的利器

探索 Spring AI 的 ChatClient API:构建智能对话应用的利器 前言 在当今人工智能蓬勃发展的时代,智能对话系统成为了众多应用的核心组成部分。无论是客服机器人、智能助手还是聊天应用,都离不开高效、灵活的对话处理能力。Spring AI 作为 S…

开源ERP系统对比:Dolibarr、ERPNext与Odoo

对于寻求开源ERP解决方案的企业而言,Dolibarr、ERPNext和Odoo是三个备受关注的选择。它们各自拥有独特的优势和特点,适用于不同规模和需求的组织。以下是对这三个系统的详细介绍和对比,以帮助您更好地理解它们的差异,并结合中文支…

【2025年】MySQL面试题总结

文章目录 1. MySQL 支持哪些存储引擎?默认使⽤哪个?2. MyISAM 和 InnoDB 有什么区别?3. 事务的四大特性?4. 并发事务带来了哪些问题?5. 不可重复读和幻读有什么区别?6. MySQL 事务隔离级别?默认是什么级别&#xff1…

Linux常用命令29——delgroup删除组

在使用Linux或macOS日常开发中,熟悉一些基本的命令有助于提高工作效率,delgroup 是用于删除用户组的一个命令。此命令通常由超级用户(root)运行,或者通过 sudo 提权来操作。本篇学习记录delgroup命令的基本使用。 下面…

字节暑期实习-网络运维工程师面经

岗位描述 这个是ByteIntern实习,是暑期实习岗位 岗位 一面 先自我介绍 抓项目技术(会进行确认是什么技术) TCP的三次握手和四次挥手 序列号和确认应答号的位置和大小 序列号是随机的吗? 序列号为什么是随机的? …

5.3刷题

P3370 【模板】字符串哈希 #include<bits/stdc.h> using namespace std; #define int long long typedef unsigned long long ull; int n; ull myhash(string s){ull code 0, x 131, y 140814840257324663;for(int i 0; i < s.size(); i){code (code * x (ull)…

Kettle下载安装教程

## 什么是Kettle Kettle&#xff08;现在也称为Pentaho Data Integration&#xff0c;简称PDI&#xff09;是一款开源的ETL&#xff08;Extract-Transform-Load&#xff09;工具&#xff0c;用于数据抽取、转换和加载。它允许用户通过图形化界面设计和执行数据集成流程&#xf…

FreeRtos实战从入门到精通--任务创建和删除(动态方法)--事了拂衣去,深藏功与名

FreeRtos是之前的一些聪明的工程师写的免费且开源的嵌入式实时操作系统代码&#xff0c;由于我们实际工作中不需要再去写rtos&#xff0c;我们只需要用就行了&#xff0c;所以博主这里只分享项目工程实战相关的内容&#xff0c;具体rtos源码&#xff0c;可以无需理会&#xff0…

Java通用Mapper自定义方法

目录 一、定义通用 Mapper 接口二、继承通用 Mapper 实现自定义方法三、注册自定义 Mapper 接口四、在实体类对应的 Mapper 接口中使用自定义方法五、实现自定义方法的 SQL 逻辑注解方式XML 映射文件方式六、使用自定义方法七、注意事项在 Java 持久层开发中,MyBatis 的通用 M…

Android WebRTC回声消除

文章目录 安卓可用的回声消除手段各种回声消除技术优缺点WebRTC回声消除WebRTC回声消除回声消除处理流程WebRTC AECM APP 安卓可用的回声消除手段 硬件回声消除 使用 AudioRecord 的 VOICE_COMMUNICATION 模式&#xff1a;通过 AudioRecord 的 VOICE_COMMUNICATION 音频源可以…

基于 SAFM 超分辨率上采样模块的 YOLOv12 改进方法—模糊场景目标检测精度提升研究

在复杂视觉环境中,如低光照、雾天或远距离拍摄等场景下,图像质量下降导致目标模糊,使得传统目标检测模型难以实现高精度识别。YOLO系列作为主流单阶段检测框架,在速度和精度方面表现出色,但在模糊和小目标场景中仍存在性能瓶颈。本文提出一种面向 YOLOv12 的创新性改进方法…

Spring 事务的底层原理常见陷阱

一、Spring 事务的底层原理 1. 核心机制 动态代理&#xff08;AOP&#xff09;&#xff1a; Spring 通过动态代理&#xff08;JDK 或 CGLIB&#xff09;生成代理对象&#xff0c;拦截被 Transactional 注解标记的方法。事务拦截器&#xff1a; TransactionInterceptor 负责管…