Windows 开发工具使用技巧 QT使用安装和使用技巧 QT快捷键
一、QT配置
1. 安装 Qt 开发框架
1、下载
1、进入下载地址
下载地址1 (官方, 需注册账号):
https://www.qt.io/download
下载地址2(推荐):
http://download.qt.io/http://download.qt.io/archive/qt/ (或更直接的)
2、安装
以Qt5.11为例,如果你是使用 MinGW 进行编译,请务必选中 MinGW 模块。而如果你希望调用 VS 的编译器进行编译,则需要勾选对应的 VS 模块。当然,如果希望进行安卓开发,则安卓模块是少不了。

2. Qt Creator IDE 配置
Qt Creator 是专门为 Qt 开发设计的集成开发环境,提供了项目管理、代码编辑、设计器等功能。
(1) 设置 Qt 版本
打开 Qt Creator。
依次进入 工具 -> 选项 -> Qt 版本。
在该页面中添加 Qt 安装路径,IDE 会自动检测并列出可用的 Qt 版本。
(2) 设置编译器
Qt Creator 可以使用多种编译器,常用的有:
MinGW:用于 Windows 平台的开源编译器。
MSVC(Microsoft Visual C++):Windows 平台下的专业级编译器,性能更强大。
GCC/Clang:用于 Linux 和 macOS 平台。
配置步骤:
打开 工具 -> 选项 -> 构建与运行 -> 编译器。
点击 添加,选择你的编译器类型(如 MinGW、GCC、Clang、MSVC)。
如果安装了 Visual Studio,可以让 Qt Creator 自动检测 MSVC 编译器。
(3) 设置调试器
调试器是开发过程中必不可少的工具,用于检查代码运行时的状态。
对于 MinGW,使用 GDB 调试器。
对于 MSVC,使用 Visual Studio 提供的调试器。
在 工具 -> 选项 -> 构建与运行 -> 调试器 中可以配置调试器。
3. 选择并创建项目
Qt Creator 支持多种类型的项目,如:
Qt Widgets 应用程序:传统的桌面应用程序。
Qt Quick 应用程序:基于 QML 的现代应用程序。
控制台应用程序:不需要图形界面的应用程序。
库项目:创建可复用的 Qt 库。
创建项目步骤:
点击 文件 -> 新建项目。
选择项目类型(例如 “Qt Widgets Application” 或 “Qt Quick Application”)。
按照提示选择项目路径和 Qt 版本、编译器。
4. CMake 和 qmake 构建系统
Qt 支持两种主要的构建系统:
qmake:Qt 自带的构建工具,适合小型项目。
CMake:现代化的跨平台构建系统,适合大型项目或需要与非 Qt 项目集成时使用。
(1) 使用 qmake
默认情况下,Qt Creator 使用 qmake 构建系统,项目文件后缀为 .pro。
项目文件包含头文件、源文件、库依赖等信息。
可以通过编辑 .pro 文件来添加新的模块或库。
(2) 使用 CMake
对于更复杂的项目,建议使用 CMake 构建系统。可以通过 CMakeLists.txt 文件配置项目。
创建项目时,选择 “CMake Project”。
编辑 CMakeLists.txt 文件,添加 Qt 模块和依赖项。
5. Qt Designer(UI 设计器)
Qt Designer 是一个强大的图形界面设计工具,允许你通过拖放组件来设计应用程序的用户界面。
在 Qt Creator 中可以通过 设计 视图进入 Qt Designer。
设计完成后,Qt 将生成相应的 .ui 文件。
可以使用 uic 工具将 .ui 文件转换为 C++ 代码,或者直接在项目中引用它们。
6. 运行与调试
在 Qt Creator 中配置完开发环境后,可以直接编译、运行和调试项目。
点击 Ctrl+R 运行项目。
在调试模式下,按下 F5 开始调试,利用断点和变量监视功能分析代码执行情况。
7. 额外工具配置
(1) Qt Virtual Keyboard
如果开发需要输入法支持,可以安装 Qt Virtual Keyboard 模块。
(2) Qt for Python
如果计划使用 Python 开发基于 Qt 的应用,安装 PySide2 或 PySide6。
(3) 跨平台部署
Qt 支持跨平台开发,但不同平台上需要不同的工具链。例如:
Windows 使用 MinGW 或 MSVC。
Linux 使用 GCC。
macOS 使用 Xcode(Clang)。
8. 环境变量配置
确保环境变量正确配置,特别是 Qt 和 编译器 的路径设置。在 Linux 和 macOS 中,通常需要修改 ~/.bashrc 或 ~/.zshrc 文件来配置环境变量:export PATH=$PATH:/path/to/qt/bin
export PATH=$PATH:/path/to/compiler/bin
在 Windows 中,可以通过系统属性中的 “环境变量” 选项进行设置。
二、使用技巧
1. 项目结构管理
文件过滤:在大型项目中,你可以通过文件过滤器隐藏不需要的文件,保持项目视图的简洁。
在 项目 -> 项目视图 中,右键点击文件夹可以选择 过滤 文件类型。
标记书签:在代码中重要的位置,可以使用 Ctrl+M 添加书签,方便快速跳转到该位置。
2. 版本控制集成
Qt Creator 支持 Git、Subversion 等版本控制系统:
通过 工具 -> 选项 -> 版本控制,配置 Git 或其他 VCS 工具路径。
在代码编辑器右键点击文件,可以执行 Git 提交、拉取、合并等操作。
3. 快速导航和搜索
Qt Creator 提供多种快捷导航方式:
文件快速跳转:使用 Ctrl+K 打开快速访问面板,输入文件名或函数名即可快速跳转。
快速搜索:使用 Ctrl+Shift+F 进行全局搜索,可以在项目中搜索特定的符号、类或函数。
导航历史:使用 Ctrl± 和 Ctrl+Shift± 可以前后跳转代码编辑历史。
4. 多屏布局与分屏
为了高效查看多个文件,可以使用 Qt Creator 的多窗口布局:
使用 窗口 -> 拆分,将代码编辑器拆分为多个视图。
你可以根据需求将 Qt Creator 界面自定义为多种布局,并通过 窗口 -> 保存布局 保存不同的工作环境。
5. 代码自动补全与提示
使用 Ctrl+Space 可以在任何时候打开代码自动补全提示。Qt Creator 会根据上下文提供智能代码提示,极大提高编写代码的效率。
三、Qt Creator 常用快捷键
掌握 Qt Creator 的常用快捷键,能显著提升工作效率。以下是一些开发中常用的快捷键汇总:
1、常用快捷键
Ctrl + / 多行注释/取消多行注释
Ctrl + B 编译工程
Ctrl + R 运行工程
Ctrl+Alt+up(向上箭头) 当前行向上复制
Ctrl+Alt+down(向下箭头) 当前行向下复制
Ctrl+Shift+up(向上箭头) 整行向上移动
Ctrl+Shift+down(向下箭头) 整行向下移动
Ctrl + I 代码格式化对齐
Ctrl + L 跳到某一行
Ctrl + F 查找/替换当前选中的内容,对与所选内容一致的部分进行高亮显示
F1 查看帮助(选中某一类或函数,按下F1,跳转帮助文档)
F2 在光标选中对象的声明和定义之间切换(和Ctrl+鼠标左键一样的效果,选中某一类或函数)
Shift + F2 声明和定义之间切换
F9 设置和取消断点
F10 单步跳过
F11 单步进入
2、其余快捷键
Esc 切换到代码编辑状态
F3 查找下一个
F4 头文件和源文件之间切换
F5 开始调试/继续执行
Shift + F3 查找上一个
Shift + F5 停止调试
Shift + F11 单步跳出
Ctrl + 0 编辑界面恢复默认字体
Ctrl + 1 激活欢迎模式
Ctrl + 2 激活编辑模式
Ctrl + 3 激活调试模式
Ctrl + 4 激活项目模式
Ctrl + 5 激活帮助模式
Ctrl + 6 激活输出模式
Ctrl + E 释放后按0 删除新建的分栏
Ctrl + E 释放后按1 删除所有分栏
Ctrl + E 释放后按2 上下分栏
Ctrl + E 释放后按3 左右分栏
Ctrl + K 定位文件,可以找到对应的文件
Ctrl + M 添加/删除书签(书签也可以添加文字标注)
Ctrl + W 关闭当前编辑的文件
Ctrl + . 下一个书签
Ctrl + , 上一个书签
Ctrl + [ 跳到代码块的头部
Ctrl + ] 跳到代码块的尾部
Ctrl + Tab 快速切换已打开的文件
Ctrl + Space 自动补全(Windows系统下与输入法切换快捷键冲突)
Ctrl + 转动鼠标滚轮 调整编辑区字体大小
Ctrl + Shift + F5 重启调试
Ctrl + Shift + F 在项目/文件夹下查找
Ctrl + Shift + R 局部变量统一修改(将光标移动到需要更改的变量上,按Ctrl+Shift+ R,当前变量名称外框为红色时,表示已经已激活全局修改功能,当修改此处变量名称时将一同修改代码中所有使用该变量的变量名。),全局变量开启全局替换窗口
Ctrl + Shift + U 查找所有使用该符号的地方
Ctrl + Shift + < 折叠代码块
Ctrl + Shift + > 展开代码块
Alt + 0 隐藏或显示边栏,编辑模式下起作用(有时写的函数太长,屏幕不够大,就用这个)
Alt + 1 切换至/关闭生成窗口
Alt + 2 切换至/关闭搜索结果窗口
Alt + 3 切换至/关闭应用输出窗口
Alt + 4 切换至/关闭编译输出窗口
Alt + 5 切换至/关闭QML/JS Console窗口
Alt + 6 切换至/关闭概要信息窗口
Alt + 7 切换至/关闭版本控制窗口
Alt + 9 最大化/最小化输出窗口
Alt + 左光标返回到上一位置
Alt + 右光标前进到下一位置
Alt + Enter将光标移动到h文件中的方法声明,按Alt+Enter,再按回车键将在cpp中添加对应的方法
Alt +left(向左箭头)页面切换.h和.cpp
Alt +right(向右箭头)页面切换.h和.cpp
Alt + M激活书签窗口
相关文章:
Windows 开发工具使用技巧 QT使用安装和使用技巧 QT快捷键
一、QT配置 1. 安装 Qt 开发框架 1、下载 1、进入下载地址 下载地址1 (官方, 需注册账号): https://www.qt.io/download下载地址2(推荐): http://download.qt.io/http://download.qt.io/archive/qt/ (或更直接的…...
【实战教程】SpringBoot全面指南:快速上手到项目实战(SpringBoot)
文章目录 【实战教程】SpringBoot全面指南:快速上手到项目实战(SpringBoot)1. SpringBoot介绍1.1 SpringBoot简介1.2系统要求1.3 SpringBoot和SpringMVC区别1.4 SpringBoot和SpringCloud区别 2.快速入门3. Web开发3.1 静态资源访问3.2 渲染Web页面3.3 YML与Properti…...
LeetCode讲解篇之1043. 分隔数组以得到最大和
文章目录 题目描述题解思路题解代码题目链接 题目描述 题解思路 对于这题我们这么考虑,我们选择以数字的第i个元素做为分隔子数组的右边界,我们需要计算当前分隔子数组的长度为多少时能让数组[0, i]进行分隔数组的和最大 我们用数组f表示[0, i)区间内的…...
Python知识点:结合Python工具,如何使用TfidfVectorizer进行文本特征提取
开篇,先说一个好消息,截止到2025年1月1日前,翻到文末找到我,赠送定制版的开题报告和任务书,先到先得!过期不候! 如何使用Python的TfidfVectorizer进行文本特征提取 在自然语言处理(…...
Diffusion models(扩散模型) 是怎么工作的
前言 给一个提示词, Midjourney, Stable Diffusion 和 DALL-E 可以生成很好看的图片,那么它们是怎么工作的呢?它们都用了 Diffusion models(扩散模型) 这项技术。 Diffusion models 正在成为生命科学等领域的一项尖端技术&…...
查找回收站里隐藏的文件
在Windows里,每个磁盘分区都有一个隐藏的回收站Recycle, 回收站里保存着用户删除的文件、图片、视频等数据,比如,C盘的回收站为C:\RECYCLE.BIN\,D盘的的回收站为D:\RECYCLE.BIN\,E盘的的回收站为E:\RECYCLE…...
[运维]2.elasticsearch-svc连接问题
Serverless 与容器决战在即?有了弹性伸缩就不一样了 - 阿里云云原生 - 博客园 当我部署好elasticsearch的服务后,由于个人习惯,一般服务会在name里带上svc,所以我elasticsearch服务的名字是elasticsearch-svc: [root…...
Ajax面试题:(第一天)
目录 1.说一下网络模型 2.在浏览器地址栏键入URL,按下回车之后会经历以下流程: 3.什么是三次握手和四次挥手? 4.http协议和https协议的区别 1.说一下网络模型 注:各层含义按自己理解即可 2.在浏览器地址栏键入URL,…...
数据仓库拉链表
数仓拉链表是数据仓库中常用的一种数据结构,用于记录维度表中某个属性的历史变化情况。在实际应用中,数仓拉链表可以帮助企业更好地进行数据分析和决策。 数仓拉链表(Slowly Changing Dimension, SCD)是一种用于处理维表中数据变化…...
【JVM】实战篇
1、内存调优 1.1 内存溢出和内存泄漏 内存泄漏(memory leak):在Java中如果不再使用一个对象,但是该对象依然在GC ROOT的引用链上,这个对象就不会被垃圾回收器回收,这种情况就称之为内存泄漏。 内存泄漏绝…...
2024年9月30日--10月6日(ue5肉鸽结束)
按照月计划,本周把ue肉鸽游戏完成,然后进行ue5太阳系 , 剩余14节,218分钟,如果按照10分钟的视频教程1小时进行完的话,则需要22小时,分布在10月2日-10月6日之间,每天44分钟的视频教程…...
【Python游戏开发】贪吃蛇游戏demo
准备步骤 项目开发使用【Mu 编辑器】 1.新建项目,并导入游戏图片 游戏编写 1.创建场景 SIZE 15 # 每个格子的大小 WIDTH SIZE * 30 # 游戏场景总宽度 HEIGHT SIZE * 30 # 游戏场景总高度def draw():screen…...
pytorch张量基础
引言张量的基础知识 张量的概念张量的属性张量的创建张量的操作 基本运算索引和切片形状变换自动微分 基本概念停止梯度传播张量的设备管理 检查和移动张量CUDA 张量高级操作 张量的视图广播机制分块和拼接张量的复制内存优化和管理 稀疏张量内存释放应用实例 线性回归神经网络…...
深入解析LlamaIndex Workflows【下篇】:实现ReAct模式AI智能体的新方法
之前我们介绍了来自LLM开发框架LlamaIndex的新特性:Workflows,一种事件驱动、用于构建复杂AI工作流应用的新方法(参考:[深入解析LlamaIndex Workflows:构建复杂RAG与智能体工作流的新利器【上篇】]。在本篇中ÿ…...
要在 Git Bash 中使用 `tree` 命令,下载并手动安装 `tree`。
0、git bash 安装 git(安装,常用命令,分支操作,gitee,IDEA集成git,IDEA集成gitee,IDEA集成github,远程仓库操作) 1、下载并手动安装 tree 下载 tree.exe 从 tree for Windows 官方站点 下载 tree 的 Windows 可执行文件。tree for Window:https://gnuwin32.source…...
Linux的基本指令(1)
前提: a:博主是在云服务器上进行操作的 b:windows上普通文件在Linux中也叫作普通文件,但是windows上的文件夹,在Linux中叫作目录 c:文件 文件内容 文件属性(创建时间,修改时间,…...
JavaEE之多线程进阶-面试问题
一.常见的锁策略 锁策略不是指某一个具体的锁,所有的锁都可以往这些锁策略中套 1.悲观锁与乐观锁 预测所冲突的概率是否高,悲观锁为预测锁冲突的概率较高,乐观锁为预测锁冲突的概率更低。 2.重量级锁和轻量级锁 从加锁的开销角度判断&am…...
费曼学习法没有输出对象怎么办?
费曼学习法并不需要输出对象。费曼学习法的核心在于通过将所学知识以简明易懂的方式解释给自己听,从而加深对知识的理解和记忆。这种方法强调的是理解和反思的过程,而不是简单地通过输出(如向他人解释)来检验学习效果。费曼学…...
Hive优化操作(二)
Hive 数据倾斜优化 在使用 Hive 进行大数据处理时,数据倾斜是一个常见的问题。本文将详细介绍数据倾斜的概念、表现、常见场景及其解决方案。 1. 什么是数据倾斜? 数据倾斜是指由于数据分布不均匀,导致大量数据集中到某个节点或任务中&…...
销冠的至高艺术:让自己不像销售
若想在销售领域脱颖而出,首先是让自己超越传统销售的框架,成为客户心中不可多得的行业顾问与信赖源泉。这不仅是身份的蜕变,更是影响力与信任度质的飞跃。 销冠对客户只吸引不骚扰,不讲自己卖什么,只讲自己能解决什么…...
日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻
在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...
【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
【Redis】笔记|第8节|大厂高并发缓存架构实战与优化
缓存架构 代码结构 代码详情 功能点: 多级缓存,先查本地缓存,再查Redis,最后才查数据库热点数据重建逻辑使用分布式锁,二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...
PHP 8.5 即将发布:管道操作符、强力调试
前不久,PHP宣布了即将在 2025 年 11 月 20 日 正式发布的 PHP 8.5!作为 PHP 语言的又一次重要迭代,PHP 8.5 承诺带来一系列旨在提升代码可读性、健壮性以及开发者效率的改进。而更令人兴奋的是,借助强大的本地开发环境 ServBay&am…...
【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案
目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后,迭代器会失效,因为顺序迭代器在内存中是连续存储的,元素删除后,后续元素会前移。 但一些场景中,我们又需要在执行删除操作…...
掌握 HTTP 请求:理解 cURL GET 语法
cURL 是一个强大的命令行工具,用于发送 HTTP 请求和与 Web 服务器交互。在 Web 开发和测试中,cURL 经常用于发送 GET 请求来获取服务器资源。本文将详细介绍 cURL GET 请求的语法和使用方法。 一、cURL 基本概念 cURL 是 "Client URL" 的缩写…...
es6+和css3新增的特性有哪些
一:ECMAScript 新特性(ES6) ES6 (2015) - 革命性更新 1,记住的方法,从一个方法里面用到了哪些技术 1,let /const块级作用域声明2,**默认参数**:函数参数可以设置默认值。3&#x…...
【深度学习新浪潮】什么是credit assignment problem?
Credit Assignment Problem(信用分配问题) 是机器学习,尤其是强化学习(RL)中的核心挑战之一,指的是如何将最终的奖励或惩罚准确地分配给导致该结果的各个中间动作或决策。在序列决策任务中,智能体执行一系列动作后获得一个最终奖励,但每个动作对最终结果的贡献程度往往…...
规则与人性的天平——由高考迟到事件引发的思考
当那位身着校服的考生在考场关闭1分钟后狂奔而至,他涨红的脸上写满绝望。铁门内秒针划过的弧度,成为改变人生的残酷抛物线。家长声嘶力竭的哀求与考务人员机械的"这是规定",构成当代中国教育最尖锐的隐喻。 一、刚性规则的必要性 …...
Python环境安装与虚拟环境配置详解
本文档旨在为Python开发者提供一站式的环境安装与虚拟环境配置指南,适用于Windows、macOS和Linux系统。无论你是初学者还是有经验的开发者,都能在此找到适合自己的环境搭建方法和常见问题的解决方案。 快速开始 一分钟快速安装与虚拟环境配置 # macOS/…...
