Qt6入门教程 4:Qt Creator常用技巧

news2024/11/15 19:46:49

在上一篇Qt6入门教程 3:创建Hello World项目中,通过创建一个Qt项目,对Qt Creator已经有了比较直观的认识,本文将介绍它的一些常用技巧。
Qt Creator启动后默认显示欢迎页面


创建项目已经用过了,打开项目也很简单,就是打开一个已经存在的项目。
项目历史记录非常有用,能快速打开最近使用过的项目。
会话记录及管理不知道是干啥的,平时也用不到。
Get Started、示例和教程一看就是些学习资料,不过都是英文的,搭配百度翻译自学效率更高哦。
编译、运行及调试在上篇中已做介绍。

一.模式选择

1.编辑

在项目历史记录中打开上篇新建的HelloWorld项目,会自动切换到编辑页面

代码编辑区顶部工具栏会显示文件编码格式,点击该编码格式,会弹出“文件编码”对话框,方便设置当前文件编码。

1.1缩放字体

代码编辑区的字母看起来非常小,可以使用快捷键Ctrl+“+”来放大字体,或者使用Ctrl+“-”来缩小字体。使用Ctrl+滚轮能达到同样的效果。使用Ctrl+0可以使字体还原到默认大小(100%)。
PS:刚发现记事本也支持这几种快捷键

1.2更换主题

如果对代码的配色不喜欢,可以换一个主题。Qt Creator默认的主题是白底的,看着比较晃眼,我比较喜欢Dark主题。可以在"首选项"窗口中进行配置

打开“首选项”窗口有两种方法,一是菜单项“工具”—>“外部”—>“配置...”;二是菜单项“编辑”—>“Preferences...”。

1.3设置文件编码


默认编码为UTF-8,Default line endings为Windows(CRLF),这两项不用修改。当默认编码为UTF-8时,UTF-8 BOM有三个选项,如下表所示:

UTF-8 BOM说明
如果编码是UTF-8则添加新添加、编辑并保存的文件是UTF-8 BOM格式
目前存在了则保留如果文件是UTF-8格式,编辑并保存后依然是UTF-8格式;如果文件是UTF-8 BOM格式,编辑并保存,这个文件的BOM会保留。
总是删除如果文件是UTF-8格式,编辑并保存后依然是UTF-8格式;如果文件是UTF-8 BOM格式,编辑并保存,这个文件的BOM会被删除,变为UTF-8格式。

这里初学Qt的话,默认就行。实践中我们可以设置为“总是删除”,因为UTF-8 BOM虽然在Windows上支持的比较好,但是Windows外的其他系统可能会导致问题,比如说Linux系统下,默认的编码就是UTF-8不带BOM。

1.4分栏

点击代码编辑区右上角的分栏按钮,可弹出菜单进行分栏(上下分栏)、左右分栏和在新窗口的打开文件;对应的菜单项是“控件”—>“分栏”、“控件”—>"左右分栏"和“控件”—>“在新窗口中打开”。这几个功能是非常实用的,可以在写代码时打开多个文件做参考。由于功能都差不多,这里只演示左右分栏。

点击右上角的关闭分栏按钮可以关闭相应的分栏。

1.5代码对齐

选中代码段后,使用快捷键Ctrl+I可以对齐代码。

1.6切换源文件和头文件

F4

1.7注释或取消注释

选中代码段后,使用快捷键Ctrl+/可以注释代码或取消注释。

2.设计

双击*ui文件,会自动切换到设计页面,设计页面在上篇中已经介绍,这里不再赘述。

3.调试

点击调试按钮“”或快捷键F5,会自动切换到调试页面,关于调试,简单的打断点上篇已经介绍,如果想深入学习,详见:Qt基础之三十九:Qt Creator调试技巧

4.项目

点击项目按钮,切换到项目页面,默认显示的是当前构建套件的“构建设置”页面

在“构建设置”页面中可以设置构建目录,还可以从构建步骤中大概推断出构建过程:Qt Creator会调用qmake生成makefile,然后调用本地的make系统(mingw32-make.exe或nmake.exe),执行生成的makefile构建脚本,从而完成项目构建。
“运行设置”里可以设置命令行参数,这在测试需要给main函数传递参数的应用场景时非常有用。


双击套件列表中的某个套件,可以切换到该套件,比如双击Qt 5.12.6(MinGW 32)这个套件。
可以看到HelloWord项目目前配置了两个套件,且当前套件为Qt 5.12.6(MinGW 32)。

5.帮助

点击帮助按钮,切换到帮助页面

帮助页面将Qt Assistant整合了进来,包含书签、查找、目录和索引等几个导航模式(默认是目录),可以在帮助中查看Qt和Qt Creator的各种信息。
当我们在开发过程中,遇到不了解的Qt方法或类,可以切换到索引导航,然后进行搜索,帮助文档里面会有这个方法或类的介绍以及使用说明。下图是qDebug的帮助。

相比这种查看帮助的方式,我更喜欢直接用Qt Assistant。

二.输出面板

1.问题

用于显示程序编译时的错误和警告信息。
我打算用qDebug输出“Hello World”,但是故意不以分号结束。此时点击编译按钮,会在“问题”窗口中给出错误提示。

同时,“编译输出”窗口也会给出编译错误信息。

2.应用程序输出

用于显示程序运行过程中公输出的所有信息,主要用于程序开发期间的调试。
我们把分号加上,编译并运行,“应用程序输出”窗口打印了Hello World。

3.搜索结果

用于显示执行了搜索操作后的结果信息。这个窗口实际上和“查找/替换”功能密切相关。
在代码编辑器按下快捷键Ctrl+F,或者点击菜单项“编辑”—>“查找/替换”,会出现“查找/替换”工具条,但是此工具条只能用于查找当前文件,比如查找Hello

点击“高级...”按钮,会自动切换到搜索结果窗口,这里就支持全局查找和替换啦

4.编译输出

用于显示程序编译过程输出的相关信息。从图中可以看到是调用g++进行编译的。

5.Terminal

提供了和CMD窗口类似的功能

原文链接:Qt6入门教程 4:Qt Creator常用技巧-CSDN博客 

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

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

相关文章

C语言中关于函数调用的理解

理论 关于函数调用的方式有两类:传值调用和传址调用 传值调用:函数的形参和实参分别占有不同的内存块,对形参的修改不会影响实参。 传址调用:把函数外部创建变量的内存地址传递给函数参数的一种调用方式。可以让函数和函数外面…

基于 STM32 的 MPU6050 姿态计算方法及应用

基于STM32的MPU6050姿态计算方法可以通过融合陀螺仪和加速度计的数据来实现。在本文中,我们将介绍通过MPU6050获取姿态数据,并结合姿态解算算法实现姿态估计的方法,并提供相应的代码示例。 1. 硬件连接及库配置 首先,我们需要将…

uniapp中uview组件库CircleProgress 圆形进度条丰富的使用方法

目录 #内部实现 #平台差异说明 #基本使用 #设置圆环的动画时间 #API #Props 展示操作或任务的当前进度,比如上传文件,是一个圆形的进度环。 #内部实现 组件内部通过canvas实现,有更好的性能和通用性。 #平台差异说明 AppH5微信小程…

静态网页课程设计——贾斯汀比伯歌手介绍(HTML+CSS+JavaScript)

前言 使用技术:HTMLCSSJS 主要内容:对贾斯汀比伯这名歌手进行介绍,还有他的几首比较经典的歌曲以及视频观看。 简单介绍 本网站是以介绍贾斯汀比伯为主题而展开,主要由首页、《Changes》和音乐视频组成的。首页下面的是对他介绍…

数据在内存中的存储方式

前言: 期末临近,继续复习! 今天要复习的内容是数据在内存中的存储,主要是整型与浮点两种,还有大小端的介绍。 提出问题 打印结果是255 -1 为什么? 首先我们要知道数据都是以二进制的形式存…

智能的核心依然是哲学的三个基本问题

智能的发展与哲学的三个基本问题密切相关,作为一个复杂领域,智能涉及到人类认知和行为的模拟与复制,因而也会涉及到哲学的核心问题。 存在论:智能的存在论问题涉及到什么是智能以及智能系统的本质。这包括对于意识、思维和自主性的…

酷雷曼精彩亮相CMC 2023中国元宇宙大会,助力云上VR直播

12月23日,2023中关村论坛系列活动——CMC 2023中国元宇宙大会在石景山首钢园冰壶馆成功举办。酷雷曼VR作为元宇宙领域代表企业之一受邀出席会议,分享元宇宙技术研发成果及应用方案,并为大会提供VR直播技术支持。 大咖云集,共商元宇…

js逆向第13例:猿人学第6题js混淆-回溯赛

文章目录 m是加密字符串怎么来的?浏览器环境检测本地运行的js代码任务六:采集全部5页的彩票数据,计算全部中奖的总金额(包含一、二、三等奖) 此题总体难度低于第5题,老规矩还是查看控制台请求地址https://match.yuanrenxue.cn/api/match/6?m=rPRDgpbV3Wd%252FyPfURQAkxK…

Vue知识总结-中

VUE-生命周期 生命周期概述 生命周期也常常被称为生命周期回调函数/生命周期函数/生命周期钩子生命周期是Vue在关键时刻帮我们调用的一些特殊名称的函数生命周期函数的名字不能更改,但函数的具体内容是由我们程序员自己编写的生命周期函数中的this指向是vm或组件实例对象 生命周…

[VUE]5-TypeScript

目录 1 TypeScript 介绍2、安装3、快速上手4、TypeScript 常用类型4.1 类型标注的位置4.2 字符串、数字、布尔类型4.3 字面量类型4.4 ⭐interface 类型4.5 class 类型 ​🍃作者介绍:双非本科大三网络工程专业在读,阿里云专家博主,…

【Leetcode】移除后集合的最多元素数

目录 💡题目描述 💡思路 💡总结 100150. 移除后集合的最多元素数 💡题目描述 给你两个下标从 0 开始的整数数组 nums1 和 nums2 ,它们的长度都是偶数 n 。 你必须从 nums1 中移除 n / 2 个元素,同时从 …

江科大STM32

目录 STM32简介 STM32简介 我们主要学习的就是STM32的外设。 NVIC:内核里面用于管理中断的设备,比如配置中断优先级这些东西SysTick:内核里面的定时器,主要用来给操作系统提供定时服务的,STM32是可以加入操作系统的&am…

SSD固态硬盘数据修复方案介绍

这么多故障的可能,那么固态硬盘SSD的数据修复,到底是否有办法呢?我们这里介绍两种尝试修复的方式,不能保证一定会成功。在你误删除一些文件的时候,可以尝试下,市场也有也有很多的修复软件。 方式1:采用修复…

【软件测试】概述

《软件缺陷》 定义 (从产品内部看)软件产品开发或维护过程中存在的错误、毛病等各种问题(从产品外部看)系统所需要实现的某种功能的失效或违背 表现形式(1) 软件没有实现产品规格说明所要求的功能模块(2) 软件中出现了产品规格说…

[ffmpeg系列 03] 文件、流地址(视频)解码为YUV

一 代码 ffmpeg版本5.1.2,dll是:ffmpeg-5.1.2-full_build-shared。x64的。 文件、流地址对使用者来说是一样。 流地址(RTMP、HTTP-FLV、RTSP等):信令完成后,才进行音视频传输。信令包括音视频格式、参数等协商。 接流的在实际…

day10 用栈实现队列 用队列实现栈

题目1:232 用栈实现队列 题目链接:232 用栈实现队列 题意 用两个栈实现先入先出队列(一个入栈,一个出栈),实现如下功能: 1)push:将元素x推到队列末尾 2)…

MyBatisPlus-基本配置与常见应用

MyBatisPlus 一、快速入门 MyBatis Plus是基于MyBatis的增强工具,提供了更简单、更便捷的方式来操作数据库。它是一个功能丰富的ORM(对象关系映射)框架,可以帮助开发人员更快速地进行数据库操作。 MyBatis Plus的主要特点如下&…

【知识点】:ECMAScript简介及特性

一.简介 什么是ECMAScript? ECMAScript是由网景的布兰登艾奇开发的一种脚本语言的标准化规范;最初命名为Mocha,后来改名为LiveScript,最后重命名为JavaScript。1995年12月,升阳与网景联合发表了JavaScript。1996年11月…

华为HarmonyOS 创建第一个鸿蒙应用 运行Hello World

使用DevEco Studio创建第一个项目 Hello World 1.创建项目 创建第一个项目,命名为HelloWorld,点击Finish 选择Empty Ability模板,点击Next Hello World 项目已经成功创建,接来下看看效果 2.预览 Hello World 点击右侧的预…

K8s-应用数据

应用数据 1 应用数据解析 k8s应用数据类型和步骤解析 k8s如何使用数据功能 k8s使用各种数据类型的配置 2 应用数据实践 emptyDir实践 资源对象文件内容 apiVersion: v1 kind: Pod metadata:name: sswang-emptydir spec:containers:- name: nginx-webimage: kubernetes-reg…