Qt Creator(2)【如何在Qt Creator中创建新工程】

阅读导航

  • 引言
  • 一、Qt Creator开始界面介绍
  • 二、如何在Qt Creator中创建新工程
    • 1. 新建项目
    • 2. 选择项目模板
    • 3. 选择项目路径
    • 4. 选择构建系统
    • 5. 填写类信息设置界面
    • 6. 选择语言和翻译文件
    • 7. 选择Qt套件
    • 8. 选择版本控制系统
    • 9. 最终效果
  • 三、认识Qt Creator项目内容界面
    • 1. 基本界面
    • 2. UI设计界面
    • 3. 构建区

引言

Qt Creator提供了一套完整的工具集,旨在简化并加速Qt应用程序的开发流程。它不仅包括代码编辑、界面设计、版本控制等功能,还提供了代码自动补全、自定义构建系统和强大的调试工具。通过今天的学习,我们将掌握Qt Creator的基本使用,从创建项目、编写代码到应用程序的调试和部署,全方位提升我们的开发效率和体验。接下来,让我们一起探索Qt Creator的世界,让Qt开发变得更加得心应手。

一、Qt Creator开始界面介绍

在这里插入图片描述
①:菜单栏:菜单栏⼀共有8个菜单选项,包含了常⽤的功能菜单:

菜单功能描述
文件包含了新建、打开、关闭项目和文件、打印和退出等基本功能
编辑包含了撤销、剪切、复制、查找和选择编码等功能
构建包含构建和运行项目等相关功能。
调试包含调试运行项目等相关功能。
Analyze包含QML分析器、Valgrind内存和性能分析器等相关功能。
工具提供了快速定位菜单、外部工具菜单等。这里的选项菜单中包含了Qt Creator各个方面的设置选项:环境设置、文本编辑器设置、帮助设置、构建和运行设置、调试器设置和版本控制设置等。
控件包含了设置窗口布局的一些菜单,如全屏显示和隐藏边栏功能等。
帮助包含Qt帮助、Qt Creator版本信息、报告bug和插件管理等菜单。

②:模式选择

模式功能描述
欢迎模式提供功能的快捷入口,如打开帮助教程、示例程序、项目、新建项目、快速打开以前的项目和会话、联网查看Qt官方论坛和博客等。示例页面显示了Qt自带的大量示例程序,并提供了搜索栏以实现快速查找;教程页面提供了一些视频教程资源,但为英文。
编辑模式主要用来查看和编辑程序代码,管理项目文件。Qt Creator中的编辑器具有关键字特殊颜色显示、代码自动补全、声明定义间快捷切换、函数原型提示、F1键快速打开相关帮助和全项目中进行查找等功能。也可以在"工具->选项"菜单中对编辑器进行设置。
设计模式整合了Qt Designer的功能。可以设计图形界面,进行部件属性设置、信号和槽设置、布局设置等操作。
调试模式支持设置断点、单步调试和远程调试等功能,包含局部变量和监视器、断点、线程以及快照等查看窗口。
项目模式包含对特定项目的构建设置、运行设置、编辑器设置、代码风格设置和依赖关系等页面。构建设置中可以对项目的版本、使用的Qt版本和编译步骤进行设置;编辑器设置中可以设置文件的默认编码;在代码风格设置中可以设置自己的代码风格。
帮助模式在帮助模式中将Qt助手整合了进来,包含目录、索引、查找和书签等几个导航模式,可以在帮助中查看Qt和Qt Creator的各方面信息。

③:构建套件选择器:构建套件选择器包含了⽬标选择器(Target selector)、运⾏按钮(Run)、调试按钮(Debug)和构建按钮(Building)四个图标。

组件功能描述
目标选择器用来选择要构建哪个项目、使用哪个Qt库,对于多个Qt库的项目很有用。还可以选择编译项目的debug版本或是release版本。
运行按钮实现项目的构建和运行。
调试按钮实现项目的调试。
构建按钮完成项目的构建。

④:欢迎模式下的窗⼝⼯作⽅式

菜单功能描述
Project用来新建工程、打开工程。
示例包含Qt官方的一些示例。
教程提供Qt官方教程。

⑤:定位器:使⽤定位器来快速定位项⽬、⽂件、类、⽅法、帮助⽂档以及⽂件系统。可以使⽤过滤器来更加准确地定位要查找的结果。

⑥:输出窗格:输出窗格包含了问题、搜索结果(Search Results)、应⽤程序输出、编译输出、Debugger Console、概要信息、测试结果(Test Results)7个选项,它们分别对应⼀个输出窗⼝,响应的快捷键依次是Alt+数字1~7。

窗口名称功能描述
问题问题窗口显示程序编译时的错误和警告信息。
Search Results搜索结果窗口显示执行了搜索操作后的结果信息。
应用程序输出应用程序窗口显示应用程序运行过程中输出的所有信息。
编译输出编译输出窗口显示程序编译过程输出的相关信息。

⑦:会话记录:可以对会话进⾏管理,包括 Clone。如果没打开⼯程,则显⽰的是最后⼀次打开的(会话)⼯程,否则,显⽰当前的会话(⼯程)。

⑧:新建项目

⑨:打开已有项目

二、如何在Qt Creator中创建新工程

1. 新建项目

打开Qt Creator,在菜单栏中选中:“⽂件”-------->“新建⽂件或项⽬”;或者使⽤快捷键:Ctrl +
n;或者直接点击:“new”;
在这里插入图片描述
在欢迎模式下,直接点击New,如下图⽰:
在这里插入图片描述

2. 选择项目模板

在这里插入图片描述
新建项⽬对话框⾥有五类项⽬模板

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

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

  • Qt Widgets Application:普通窗体模板,传统基于部件的窗体界⾯程序。
  • Qt Console Application:Qt 控制台应⽤程序。因为 Qt 主要⽤于图形界⾯设计,这个控制台项⽬模板基本不⽤。
  • Qt for Python:在Python下⽤LGPL的许可来开发闭源 Qt软件。
  • Qt Quick Application: Qt 提供的⼀种⾼级⽤⼾界⾯技术,使⽤它可以⽅便快速的为移动以及嵌⼊式设备开发流畅美观的⽤⼾界⾯。Qt Quick 模块是开发QML应⽤的标准库,提供了使⽤QML创建⽤⼾界⾯所需的⼀切,包括可视化、交互、动画、模型、视图、粒⼦效果以及着⾊效果等。

3. 选择项目路径

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

在这里插入图片描述

4. 选择构建系统

选择Qt项⽬的构建系统,使⽤默认的"qmake"即可
在这里插入图片描述
Qt中的构建⼯具有三种可供选择,分别是:qmake、CMake、Qbs,下⾯依次介绍。

  • qmake:qmake是⼀个构建⼯具(build tool),⽤于⾃动⽣成makefile⽂件。qmake⽀持跨平台构建。qmake编辑的是⼀个后缀名为.pro的⽂件。
  • CMake:CMake是⼀个跨平台的构建⼯具。CMake本⾝不是⼀个编译器,其实就是⽣成⼀个让编译器能读懂编译流程的⽂件⼯具。让CMake⾃动⽣成构建系统,例如Makefile和Visual Studio项⽬⽂件。CMake是⼀个第三⽅⼯具,有⾃⼰的⽂档。
  • Qbs:Qbs(Qt Build Suite:Qt构建套件)同qmake、CMake⼀样都是构建⼯具。Qbs 号称是新⼀代的构建⼯具,⽐ qmake 编译速度更快。Qbs 没有绑定Qt版本,它从项⽬⽂件的⾼级项⽬描述中⽣成⼀个正确的依赖表。⽽传统的MakeFile⽣成⼯具如qmake和CMake,其在⽣成MakeFile⽂件后将实际的命令交给Make⼯具去执⾏。

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

5. 填写类信息设置界面

在这里插入图片描述
对于基类的选择,⽬前有三种基类:

基类说明
QMainWindow主窗口类,一般用于较为复杂的应用程序,除了中央客户端界面,还包括菜单栏、工具栏、状态栏以及多个可停靠的工具对话框等。
QWidget最简单、最基本的窗体程序,里面可以放置多个控件实现程序功能。
QDialog基于对话框的程序,对话框一般用于弹窗,也可以用于主界面显示。对话框是从QWidget继承而来的,并丰富了一些功能,如模态显示和返回值等。

上述三个类之间的关系如下图:
在这里插入图片描述

6. 选择语言和翻译文件

点击"下⼀步"进⼊如下界⾯:
在这里插入图片描述

此处选择的语⾔是"汉语",“英语"这样的语⾔。⽽不是"编程语⾔”.
一般是不用设置的

7. 选择Qt套件

在这里插入图片描述

默认只有第⼀个"Desktop Qt 5.14.2 MinGW 64-bit",如果安装配置了多个Qt套件,就可以都选上。

Qt套件是指Qt程序从编译链接到运⾏环境的全部⼯具和Qt类库的集合,对于MinGW版本Qt程序⽣成和调试,⾄少需要MinGW中的编译器g++(⾃动调⽤链接器)、g++配套的基础库、调试器gdb还有使⽤MinGW环境编译⽽成的Qt类库⾃⾝。默认情况下,在上⾯Kit Selection⾥选中全部套件。

8. 选择版本控制系统

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

在这里插入图片描述

9. 最终效果

在这里插入图片描述

三、认识Qt Creator项目内容界面

1. 基本界面

在这里插入图片描述

2. UI设计界面

双击widget.ui⽂件,Qt Creator会⾃动进⼊设计模式,可以对图形界⾯进⾏可视化编辑:
在这里插入图片描述
①:组件选择窗⼝:组件选择窗⼝分为多个组,如Layouts、Buttons、Display Widgets等,界⾯设计的常⻅组件都可以在组件选择窗⼝中找到。
②:UI设计窗⼝:如果要将某个组件放置到该窗⼝上时,从组件选择窗⼝上拖放⼀个组件到窗体上即可。
③:动作编辑窗⼝:动作编辑窗⼝包括Action Editor以及Signals和Slots编辑器。Action Editor主
要是⽤来新建Action,并且通过拖拽的动作,将新建好的Action添加到菜单栏和⼯具栏上;Signals
和Slots编辑器⽤于可视化地进⾏信号与槽的关联。
④:对象浏览窗⼝:⽤树状视图显⽰窗体上各组件之间的布局包含关系,视图有两列,显⽰每个组件
的对象名称(ObjectName)和类名称。
⑤:属性设置窗⼝:显⽰某个选中的组件或窗体的各种属性及其取值,可以在属性设置窗⼝⾥修改这
些属性的值。

3. 构建区

在这里插入图片描述
这⾥有三种构建模式

模式说明
Debug以"-g"模式编译,带着符号信息,优点是便于调试。
ProfileProfile是在"Debug"和"Release"之间取一个平衡,兼顾性能和调试,可以类似的看做是性能更优又方便调试的版本。
Release"Release"是经过优化之后,性能比"Debug"更上一个档次。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于Vue的神影视频APP

需求说明:使用Vue脚手架进行搭建,页面简洁、精致,和一些常见的电影网站类似,例如支付宝中的“淘票票电影”。在项目中使用页面布局技术(表格,vue.js框架,DIV+CSS或者混合使用)进行页面设计,使网站功能齐全,界面美观大方,有一定的交互性。 功能分析:系统主要分为七…

翻译《The Old New Thing》- What did MakeProcInstance do?

What did MakeProcInstance do? - The Old New Thing (microsoft.com)https://devblogs.microsoft.com/oldnewthing/20080207-00/?p23533 Raymond Chen 2008年02月07日 MakeProcInstance 做了什么&#xff1f; MakeProcInstance 宏实际上什么也不做。 #define MakeProcInst…

四川农业大学Java实训项目圆满收官,汇智知了堂引领学子实践创新

近日&#xff0c;四川农业大学与汇智知了堂共同举办的Java实训项目正式迎来了项目汇报阶段。本次实训是汇智知了堂在高等教育领域深化校企合作、推动产教融合的一次重要实践&#xff0c;旨在为广大学子提供一个将理论知识与实际操作相结合的平台。 在实训过程中&#xff0c;汇…

(三)MySQL 索引

欢迎访问 什么是索引&#xff1f; 提高查询效率的一种数据结构&#xff0c;索引是数据的目录 索引的分类 按「数据结构」分类&#xff1a;Btree索引、Hash索引、Full-text索引。按「物理存储」分类&#xff1a;聚簇索引、二级索引。按「字段特性」分类&#xff1a;主键索引…

【Linux学习】进程间通信 (3) —— System V (1)

下面是有关进程通信中 System V 的相关介绍&#xff0c;希望对你有所帮助&#xff01; 小海编程心语录-CSDN博客 目录 1. System V IPC 1. 消息队列 msg 消息队列的使用方法 1.1 消息队列的创建 1.2 向消息队列发送消息 1.3 从消息队列接收消息 1.4 使用msgctl函数显式地…

拉格朗日插值及牛顿差商方法的实现(Matlab)

一、问题描述 拉格朗日插值及牛顿差商方法的实现。 二、实验目的 掌握拉格朗日插值和牛顿差商方法的原理&#xff0c;能够编写代码实现两种方法&#xff1b;能够分析多项式插值中的误差。 三、实验内容及要求 利用拉格朗日插值及牛顿差商方法估计1980 年的人口&#xff0c;并…

监控员工电脑的软件有哪些,不得不说这几款电脑监控软件太好用了

监控员工电脑的软件在市场上种类繁多&#xff0c;以下是几款备受好评的电脑监控软件&#xff0c;它们各自具有独特的功能和优势&#xff0c;选择前必须了解一下才能做成正确决定。 1.安企神&#xff1a; 这款软件支持7天试用测试&#xff0c;获取测试版请移驾 ↓↓↓ 安企神…

常见的数据分析方法

1.周期性分析法 一个指标的观察时间拉长,看它是否有周期变化规律。周期性分析常见的有两者:自然周期和生命周期。自然周期,指业务指标会随着时间自然变化,如节假日用户/业绩出现下滑、产品销售额随季节变动等;生命周期,譬如“商品生命周期”、“APP生命周期”、“用户生…

【论文阅读】Rank-DETR(NIPS‘23)

paper:https://arxiv.org/abs/2310.08854 code:https://github.com/LeapLabTHU/Rank-DETR

二叉树——基础知识详解

前言&#xff1a; 经过前面的学习&#xff0c;我们接下来要开始二叉树的学习&#xff0c;因二叉树有难度&#xff0c;为了方便讲解以及各位的理解&#xff0c;本节知识会分成不同的小节进行学习&#xff0c;在本阶段只学习初阶的二叉树&#xff08;堆&#xff0c;二叉数基本知识…

项目9-网页聊天室3(主界面之用户信息)

1.前端页面 CSS: 如何让img里的图片自适应div&#xff0c;且不变形_img自适应div大小 铺满且不变形-CSDN博客 JavaScript/jQuery 如何改变一个img元素的src属性|极客教程 (geek-docs.com) 2.要求 左上角显示用户的昵称和头像. 3.后端代码 3.1 添加拦截器 3.2 注册拦截器 …

信息学奥赛初赛天天练-14-阅读程序-字符数组、唯一分解定理应用

更多资源请关注纽扣编程微信公众号 1 2019 CSP-J 阅读程序1 (程序输入不超过数组或字符串定义的范围&#xff1b;判断题正确填√,错误填&#xff1b;除特殊说明外&#xff0c;判断题1.5分&#xff0c;选择题3分&#xff0c;共计40分) 1 输入的字符串只能由小写字母或大写字母组…

vue/uniapp 企业微信H5使用JS-SDK

企业微信H5需要我们使用一些SDK方法如获取外部联系人userid 获取当前外部联系人userid 使用SDK前提是如何通过config接口注入权限验证配置 使用说明 - 接口文档 - 企业微信开发者中心 当前项目是vue项目&#xff0c;不好直接使用 引入JS文件&#xff0c;但我们可以安装依赖…

python使用多种方法计算列表元素平方的技巧

新书上架~&#x1f447;全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我&#x1f446;&#xff0c;收藏下次不迷路┗|&#xff40;O′|┛ 嗷~~ 目录 一、使用列表推导式进行元素平方 二、使用map函数进行元素平方 三、循环遍历列表进行元素平…

根据Depth Quality Tool的z轴误差值确认相机是否需要进行相机内参校准

下载Depth Quality Tool深度质量验证工具 网盘链接【RealSense SDK v2.55.1】 链接&#xff1a;https://pan.baidu.com/s/1NrlbwNDBUL8wpWfVwbpMwA?pwd2jl0 提取码&#xff1a;2jl0 打开Depth Quality Tool深度质量验证工具 找一面墙作为目标&#xff0c;将摄像头水平对准墙…

ssm超市管理系统java超市进销存管理系统jsp项目

文章目录 超市进销存管理系统一、项目演示二、项目介绍三、系统部分功能截图四、七千字项目文档五、部分代码展示六、底部获取项目源码和七千字项目文档&#xff08;9.9&#xffe5;带走&#xff09; 超市进销存管理系统 一、项目演示 超市进销存管理系统 二、项目介绍 角色分…

007、字符串_命令

字符串类型是Redis最基础的数据结构。首先键都是字符串类型&#xff0c;而且 其他几种数据结构都是在字符串类型基础上构建的&#xff0c;所以字符串类型能为其 他四种数据结构的学习奠定基础。 设置值 set key value [ex seconds] [px milliseconds] [nx|xx] 下面操作设置键…

json web token及JWT学习与探索

JSON Web Token&#xff08;缩写 JWT&#xff09;是目前最流行的跨域认证解决方案 作用&#xff1a; 主要是做鉴权用的登录之后存储用户信息 生成得token(令牌)如下 eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MSwiaWF0IjoxNjg3Njc0NDkyLCJleHAiOjE2ODc3NjA4OTJ9.Y6eFG…

go-zero 实战(1)

环境准备 go 版本 go version go1.22.2 linux/amd64 goctl 安装 goctl&#xff08;官方建议读 go control&#xff09;是 go-zero微服务框架下的代码生成工具。使用 goctl 可以显著提升开发效率&#xff0c;让开发人员将时间重点放在业务开发上&#xff0c;其功能有&#xff1a…

crossover玩游戏缺少文件怎么办 为什么游戏打开说缺失文件 crossover支持的游戏列表 CrossOver 提示 X 11 缺失怎么办?

CrossOver是一款类虚拟机软件&#xff0c;可以实现在Mac电脑上运行exe程序。不少Mac用户为了玩游戏&#xff0c;选择使用CrossOver这款软件玩Windows平台的游戏。 一、CrossOver支持的软件多吗 CrossOver是一款基于Wine的兼容工具&#xff0c;它可以让你在Mac或Linux上运行许多…