【Qt Creator快速入门第三版学习笔记】——第1章 Qt Creator简介

2023-11-04

第1章 Qt Creator简介

前言

笔记系列

**参考书籍:Qt Creator快速入门 第3版

作者:霍亚飞

版权方:北京航空航天大学出版社

出版日期:2017-1

笔记仅供本人参考使用,不具备共通性

Qt Creator

  • 跨平台
  • 完整的Qt集成开发环境(IDE)
  • 包括
    • 高级C++代码编辑器
    • 项目和生成管理攻击
    • 集成的上下文相关帮助系统
    • 图形化调试器
    • 代码管理和浏览工具

1.1 Qt Creator的下载与安装

1.2Qt Creator环境介绍

1.2.1 主界面介绍

Qt Creator主界面如下

在这里插入图片描述

它主要分为菜单栏(Menu Bar)、模式选择器(Mode Selector)、构建套件选择器(Kit Selector)、定位器(Locator)、输出窗格(Output panes)

(1 )菜单栏(Menu Bar)

分类 内容
文件菜单 ①新建、打开和关闭项目和文件
②打印文件
③退出
编辑菜单 ①撤销、剪切、复制、查找和选择编码等常用功能菜单
②高级菜单包括:标识空白符、折叠代码、改变字体大小、使用vim风格编辑等
构建菜单 ①包含构建和运行项目等线管的菜单
调试菜单 ①包含调试程序等相关的功能菜单
Analyze菜单 ①QML分析器
②Valgrind内存和功能分析器
工具菜单 ①快速定位菜单
②外部工具菜单
③Qt Creator各个方面的设置选项
包括:
1)环境设置(在其Interface页面可以将主题Theme设置为Classic,从而使用以前的经典Qt Creator主题了)
2)文本编辑器设置
3)帮助设置
4)构建和运行设置
5)调试器设置
6)版本控制设置等
控件菜单 包含了设置窗口布局的一些菜单
帮助菜单 包含了Qt帮助、Qt Creator版本信息、报告bug和插件管理等菜单

(2) 模式选择器(Mode Selector)

欢迎模式
分类 内容
跳转快捷键 Ctrl+1
功能 提供一些功能的快捷入口,如:
打开帮助教程
打开示例程序
打开项目
新建项目
快速打开以前的项目和会话
联网查看Qt官方论坛和博客等
页面介绍 ①Peojects页面:
1)显示最近打开的项目列表;
2)可以在此创建一个新项目或打开一个已有的项目
②示例页面:
1)Qt自带的大量示例程序;
2)搜索栏实现快速查找
③教程页面:
1)提供了一些视频教程资源
编辑模式
分类 内容
跳转快捷键 Ctrl+2
功能 主要用来查看和编辑程序代码,管理项目文件
特色 Qt Creator编辑器的功能有有:
①关键字特殊颜色显示
②代码自动补全
③声明定义间快捷切换
④函数原型提示
⑤F1快捷键打开相关帮助
⑥全项目中进行查找等

备注 以上功能都可以在工具--->选项菜单项中对编辑器进行个性化设置
设计模式
分类 内容
跳转快捷键 Ctrl+3
功能 整合Qt设计师的功能,可以:
①设计图形界面
②进行部件属性设置
③信号与槽设计
④布局设置等
备注 以上功能都可以在工具--->选项菜单项中对编辑器进行个性化设置
该内容在第2章会讲到
调试(Debug)模式
分类 内容
跳转快捷键 Ctrl+4
功能 支持设置断点、单步调试等功能
包含局部变量和监视器、断点、线程以及快照等查看窗口
备注 以上功能都可以在工具--->选项菜单项中对调试器进行个性化设置
该内容在第3章会讲到
项目模式
分类 内容
跳转快捷键 Ctrl+5
功能 包含对特定项目的构建设置运行设置编辑器设置代码风格设置依赖关系等页面
构建设置中可以对项目的版本、使用的Qt版本和编译步骤进行设置
编辑器设置中可以设置文件的默认编码
代码风格设置中可以设置自己的代码风格
备注 以上功能都可以在工具--->选项菜单项中对项目进行个性化设置
该内容在第2章会讲到
帮助模式
分类 内容
跳转快捷键 Ctrl+6
功能 帮助模式将Qt助手整合了起来,包含目录、索引、查找和书签等几个导航模式
可以在帮助中查看Qt和Qt Creator的各方面信息
备注 以上功能都可以在工具--->选项菜单项中对帮助模式进行个性化设置

(3) 构建套件选择器(Kit Selector)

  • 目标选择器(Target selector)
    • 选择要构建的项目和需要使用的Qt库
    • 选择要构建的版本(Debug或者Release)
  • 运行按钮(Run)
    • 实现项目的构建和运行
  • 调试按钮(Debug)
    • 进入调试模式,方便调试程序
  • 构建按钮(Building)
    • 完成项目的构建

(4) 定位器(Locator)

  • 用来快速定位项目、文件、类、方法、帮助文档、文件系统
  • 可以使用过滤器来更加准确地定位要查找的结果
  • 在"工具—>选项"菜单中可以设置定位器的相关选项
  • 定位器在第四章会讲到

(5) 输出窗格(Output panes)

  • 包括七个选项(用Alt+数字1-7可以快捷打开)
    • 问题
      • 用以显示程序编译时的错误和警告信息
    • 搜索结果
      • 显示执行了搜索操作后的结果信息
    • 应用程序输出
      • 显示应用程序运行过程中输出的所有信息
    • 编译输出
      • 显示程序编译过程输出的相关信息
    • Debugger Console
    • 概要信息
    • 版本控制(Version Control)
      • 显示版本控制的相关输出信息

1.2.1 运行一个示例程序

  • Qt安装好了之后,Qt Creator和Qt库就已经完成了自动连接,因此不再需要额外的设置就可以开始程序开发了

    • 如需要额外添加新的Qt版本,可以查看书本P6
  • 运行示例程序

    • 示例页面提供的示例程序几乎设计了Qt支持的所有的所有功能

    • 在示例页面的搜索框中搜索关键字dialog

    • 在出现的结果中选择Embedded Dialogs (嵌入式对话框),如下图所示

      • 在这里插入图片描述
    • 打开后,Qt会自动打开该程序的项目文件,进入编辑模式,同时会打开该示例的帮助文档,如下图

      • 在这里插入图片描述
    • 点击上图中④号框出来的运行按钮,开始编译运行程序,此时观察下面的"应用程序输出"栏中会显示该程序的运行信息和调试输出信息

      • 在这里插入图片描述
  • 注意:所有示例程序其实都是可修改的

    • 但不建议直接修改示例程序
    • 若是想要修改实例程序,可复制示例程序的副本进行修改并编译,具体做法如下
      • 1.在项目列表中的任意文件上右击--->"在Explore中显示",从而打开项目文件夹
      • 2.将项目文件夹整个复制到别的目录下,
      • 3.打开复制过来的副本,按照自己的想啊开始修改程序
  • 编辑模式提供了多个快捷视图

    • 默认显示的是项目视图打开文档视图

    • 此外还有书签视图文件系统视图类视图大纲视图类型层次视图Include Hierarchy视图

    • 点击视图列表旁边的小三角可以切换视图窗口,如下图所示

      • 在这里插入图片描述
    • "大纲"视图可以显示该文件中的所有类、函数和变量,并且可以快速定位

      • 在这里插入图片描述
  • 在打开了多个文件后,可以在打开文档列表中选择需要文件进行切换,此外还可以使用快捷键CTRL + Tab在多个文件之间快速切换

  • 编辑器还有许多其他功能,后面会慢慢讲到,读者也可以自行摸索

1.2.2 帮助模式

  • 按下CTRL + 6组合键,进入帮助模式

    • 在这里插入图片描述
  • 我们可以在这里了解到Qt Creator更详细的使用和设置方法

  • 它包含了

    • 开始使用(Getting Started)
    • 项目管理(Managing Projects)
    • 用户界面设计(Designing User Interface)
    • 代码编辑(Coding)
    • 构建和运行(Building and Running)
    • 测试(Testing)
    • 高级用法(Advanced Use)
    • 获取帮助(Getting Help)等
  • 以上图为例

    • 在左上方的目录栏中双击Qt 5.13.0 Reference Documentation 打开Qt参考文档页面,如下

    • 在这里插入图片描述

    • 这里几乎涵盖了Qt的全部内容,其中

      • 在Reference分类中
        • 列举了所有的C++类,QML类型,Qt模块和Qt参考文档,这里是整个Qt框架的索引
      • 在Getting Started分类中
        • Getting Started with Qt 包含了初学者开始学习Qt的入门介绍
        • What’s New in Qt 5 罗列了Qt 5 中的新特性
        • Examples and Tutorials 包含了Qt所有的示例程序和入门教程
        • Supported Platforms 通过表格的形式展示了Qt对各个系统平台和编译器的支持情况
        • Qt Licensing 详细介绍了Qt各个模块的授权方法
      • 在Overviews分类中
        • 分领域介绍了Qt最重要的内容,
        • 如开发工具、用户界面、核心机制、数据存储、多媒体、网络连接、图形、Web内容、手机 API、QML应用等
        • 需要学习或使用某方面内容时,可以从这里进入
      • 在这里插入图片描述
  • 添加书签

    • 快捷键:CTRL+M
    • 或者单击界面上方边栏的书签图标
  • 帮助模式的工具窗口中还提供了"索引"、"查找"和"书签"三种方式对文档进行导航

    • 在书签方式下,可以看到以前添加的书签
    • 在查找方式下,可以输入关键字进行全文检索,即在整个文档的所有文章中进行查找
    • 在索引方式下,只需要输入关键字,就可以罗列出相关的内容

1.3 Qt工具简介

  • Qt Assistant和Qt Designer都已经集成到了Qt Creator里面

1.3.1 Qt Assistant(Qt助手)

  • 功能
    • 定制Qt Assistant 并与应用程序一起重新发布
    • 快速查找关键词、全文本搜索、生产索引和书签
    • 同时为多个帮助文档集合建立索引并进行搜索
    • 在本地存放文档或在应用程序中提供在线帮助
  • Qt Assistant 的定制和重新发布会在第9章中讲到

1.3.2 Qt Designer(Qt设计师)

  • 强大的跨平台GUI布局和格式构建器
  • 功能和优势有
    • 使用拖放功能快速设计用户界面
    • 定制部件或从标准部件库中选择部件
    • 以本地外观快速预览格式
    • 通过界面原型生成C++或Java代码
    • 将Qt Designer 与 Visual Studio 或 Eclipse IDE配合使用
    • 使用Qt信号与槽机制构建功能齐全的用户界面

1.3.3 Qt Linquist(Qt语言家)

  • 一套加速应用程序翻译和国际化的工具
  • 即Qt使用单一的源码树和单一的应用程序二进制包也可以同时支持多个语言和书写系统
  • 主要功能有
    • 收集所有UI文本,并通过简单的应用程序提供给翻译人员
    • 语言和字体感知外观
    • 通过智能的合并工具快速为现有应用程序增加新的语言
    • Unicide编码支持世界上大多数字母
    • 运行时可以切换从左向右或从右向左的语言
    • 在一个文档中混合多种语言
  • Qt Linquist会在第九章中具体介绍

1.4 小结

  • Qt Creator的下载、安装以及Qt示例程序的运行
  • Qt帮助程序的使用
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Qt Creator快速入门第三版学习笔记】——第1章 Qt Creator简介 的相关文章

  • QCombobox 向下箭头图像

    如何更改Qcombobox向下箭头图像 现在我正在使用这个 QSS 代码 但这不起作用 我无法删除向下箭头边框 QComboBox border 0px QComboBox down arrow border 0px background
  • 如何获取 QTableView 的标题列表?

    我有一个QTableView我的对话框中的对象 我需要访问该表的水平标题并将它们放入QStringList object 尽管进行了大量搜索 但我在 Qt 文档中找不到如何获取此标头列表 编辑 我发现的最接近的地方是this https w
  • 如何在 QTabWidget Qt 中展开选项卡

    我有一个QTabWidget像这个 但我想展开选项卡以 填充 整个小部件宽度 如下所示 我怎样才能做到这一点 我在用Qt 5 3 2 and Qt 创建者 3 2 1 Update 我尝试使用setExpanding功能 ui gt myT
  • 退出 Qt 程序的正确方法?

    我应该如何退出 Qt 程序 例如在加载数据文件时 发现文件损坏 并且用户需要退出该应用程序或重新启动数据文件 我是不是该 call exit EXIT FAILURE call QApplication quit call QCoreApp
  • 如何使QTableView类的restoreState()和saveState()正常工作?

    首先 我想说 我的问题已经在这里讨论过 并且这里是 https stackoverflow com questions 1163030 qt qtableview and horizontalheader restorestate 但答案并
  • 将 gnuplot 嵌入现有 QtWidget 中

    我正在用 C 创建一个 伪 实时绘图应用程序 使用 gnuplot 作为绘图后端 我的要求之一是绘图必须位于现有窗口内 而不是有一个单独的绘图窗口 gnuplot 默认为 Gnuplot 有一个选项可以指定 Qt 小部件 ID 这似乎适合我
  • Qt - 无法让 lambda 工作[重复]

    这个问题在这里已经有答案了 我有以下功能 我想在其中修剪我的std set
  • 如何检测QTableView中的双击

    我正在使用 PyQt 创建 GUI 应用程序 在继承自 QTableView 的视图中 需要检测用户双击行时选择的行 该表可以排序 但不能编辑 我该怎么做 注意 尝试了 doubleClicked int 信号 它是由鼠标按钮发出的 而不是
  • Qt-Qlist 检查包含自定义类

    有没有办法覆盖加载自定义类的 Qt QList 的比较机制 即在 java 中你只需要重写一个比较方法 我有一个带有我的自定义类模型的 QList QList
  • Qt moc 在头文件中实现?

    是否可以告诉 Qt MOC 我想声明该类并在单个文件中实现它 而不是将它们拆分为 h 和 cpp 文件 如果要在 cpp 文件中声明并实现 QObject 子类 则必须手动包含 moc 文件 例如 文件main cpp struct Sub
  • 如何将 zlib 添加到现有的 qt 安装中

    如何将 zlib 添加到 Qt 的现有安装中 我对此很陌生 所以请给我详细的描述 提前感谢您的帮助 zlib 包含在 Qt 核心库中 如果你想在 Qt 程序中使用 zlib 函数 你只需要包含 src 3rdparty zlib 中的 zl
  • 静态变量中的 qt tr()

    我在 qt 中的翻译方面遇到问题 我的项目中的所有翻译都工作正常 但有一个翻译位于类的静态变量中 相应部分代码如下 头文件类似于这样 typedef struct int type QString problematicString inf
  • 如何在 Qt 应用程序中通过终端命令运行分离的应用程序?

    我想使用命令 cd opencv opencv 3 0 0 alpha samples cpp cpp example facedetect lena jpg 在 Qt 应用程序中按钮的 clicked 方法上运行 OpenCV 示例代码
  • 在 Qthread 中运行函数 - 应用程序将挂起

    我在 QT 内部线程方面遇到一些问题 include
  • 为什么总是在 mouseDoubleClickEvent 之前调用 mousePressEvent

    请考虑以下代码 include
  • QWidget::showMinimized() 不起作用

    在 Ubuntu 13 04 上 如果使用QWidget showMinimized 为了最小化窗口 我发现通过单击系统任务栏上的应用程序图标恢复它后 调用QWidget showMinimized 无法工作 connect minimum
  • 扩展 TabViewStyle styleData

    我目前正在尝试找到一种更好的方法来执行此操作 将图标添加到选项卡 现在 我正在放弃 styleData title 以包含图标源 但如果能够扩展 styleData 就更好了 这样我就可以包含其他自定义属性 这是我当前的黑客 Tab tit
  • 如何使用 ClangCodeModel 插件在 QtCreator 中设置 C++ 标准?

    抱歉 如果这是一个愚蠢的问题 但我已经尝试了几乎所有的方法 现在正在用头撞墙 问题是 带有 Clang 代码模型插件的 QtCreator 4 8 0 beta for Windows 解析我的项目 为 C 98 而实际上它是 C 17 但
  • 如何将枚举类传递给 QML?

    我正在学习QML with Qt并在通过时遇到一些麻烦enum class to qml 当我使用信号时int参数 一切正常 代码运行完美 But 麻烦就在这里 如果我使用信号与一些enum class我有参数undefinedqml 信号
  • 如何从 Qt 应用程序通过 ODBC 连接到 MySQL 数据库?

    我有一个新安装的 MySQL 服务器 它监听 localhost 3306 从 Qt 应用程序连接到它的正确方法是什么 原来我需要将MySQL添加到ODBC数据源 我在遵循这个视频教程后做到了这一点 https youtu be K3GZi

随机推荐

  • 好像还挺好玩的GAN5——Keras搭建COGAN耦合生成式对抗网络

    好像还挺好玩的GAN5 Keras搭建COGAN耦合生成式对抗网络 学习前言 什么是COGAN 神经网络构建 1 Generator 2 Discriminator 训练思路 实现全部代码 学习前言 发现一个挺有意思的结构 可以通过同一个输
  • Unity实现扇形小地图的区域检测

    说明 最近接到一个需求 在一个雷达界面 扇形UI 的界面上显示出三维场景中真实的物体显示情况 我的思路就是一个三维场景某物体的位置映射到二维UI界面上 实现思路 物体到扇形原点的距离需要小于扇形半径的距离 否则就不在扇形范围内 物体与扇形原
  • 【git】 无法commit问题

    今天写完代码git commit m 一下发现提示 Another git process seems to be running in this repository e g an editor opened by git commit
  • 2022-10-20 Linux LED灯驱动gpio-leds心跳呼吸灯heartbeat、timer,路径/sys/bus/platform/devices/leds

    一 测试环境 Android 9 系统 二 驱动文件在 kernel drivers leds leds gpio c 三 dts的官方配置文档 kernel Documentation devicetree bindings leds l
  • Idea 使用技巧(MAC)

    记住符 打标快捷键 Ctrl Shift 任意数字 查标快捷键 Ctrl 任意数字 在Idea查看标签相关操作 Navigate Bookmarks 快捷键设置 intellij Preferencs keyMaps 快捷键 顶部 fn c
  • crontab每分钟执行一次任务

    0 实例 在 home 下面写了一个test sh bin sh echo hello gt home hello txt echo hello hello hello hello gt gt home hello txt 还是用这个比较好
  • 五、C++语言初阶:文件

    5 文件 5 1 流 流 数据从一个对象到另一个对象的传输 功能 标准输入输出 文件处理 分类 含义 文本流 一串ASCII字符 二进制流 一串二进制 5 2 流类型 标准库定义了三大类流类型 标准I O流 文件流 字符串流 标准I O流
  • Kaggle 数据竞赛

    文章目录 一 前言 二 主要内容 1 评估 2 时间线 3 奖金 4 代码要求 三 总结 CSDN 叶庭云 https yetingyun blog csdn net 一 前言 使用机器学习技术 通过匿名健康特征的测量数据来检测疾病 比赛目
  • 动力节点最新Java17零基础视频第二章 初识Java

    计算机概述 计算机是一种现代化的电子设备 它能够接受 存储 处理和输出数据 计算机由硬件和软件两部分组成 硬件包括中央处理器 CPU 内存 硬盘 显示器 键盘 鼠标等部件 软件则包括系统软件和应用软件 计算机可以进行各种操作 如文字处理 图
  • 当定制化的呼声响起,MaaS就在百融云的掌心

    中国的TMT产业 似乎每隔几年都要经历一轮痛苦的反思 而这次的新课题 是AI到底能不能拯救中国的软件行业 大洋彼岸的Adobe 用订阅制付费牢牢拴住离不开自己的专业视频剪辑用户 Shopify用收租的模式 为电商卖家提供搭建网店的技术和模版
  • BigDecimal基本知识

    在我们的日常计算中 有时会涉及到比较大的数字之间的计算 如 超大金额的计算 如果是韩元等的话 还要大 这时 使用float double这样的浮点数就不那么准确了 因为不论是float 还是double都是浮点数 而计算机是二进制的 浮点数
  • 如何使用github中的pull request功能?

    pull request是社会化编程的象征 通过这个功能 你可以参与到别人开发的项目中 并做出自己的贡献 pull request是自己修改源代码后 请求对方仓库采纳的一种行为 github入门与实践 下面具体说一下github中使用pul
  • Unity TimeLine实用功能讲解

    这一个技术相对于其他动画系统 最大的区别就是 TimeLine针对多个游戏物体做出的一系列动画 主要用于过场动画的制作 实现电影级的那种分镜效果 注意 使用TimeLine需要2017以上的版本 在菜单栏中点Window 找到TimeLin
  • uView 中 Steps 步骤条,竖向步骤条不展示

    问题描述 Steps 步骤条在竖向时候步骤条竖线不展示 解决方法 找到uview ui components u steps item u steps item vue文件 设置 style height 100 即可 如图
  • 如何在MacOS上玩儿汇编?

    在Mac上写汇编还是相当方便的 本文通过写一个Helloworld程序来入门 首先 MacOS 自带nasm 只是版本有点老 编译不了64位程序 只要上官网下一个最新的 替换一下就行了 有一点需要注意的是mac上gcc编译 o文件的默认入口
  • jquery笔记

    收起展开
  • mysql8安装以及配置、参数优化

    1 配置bin到path 2 mysql解压版本在根目录创建my ini 3 初始化数据库 mysqld initialize console 这里会生成一个初始密码 需要记录下来 否则需要删除datadir目录重新初始化 D dev my
  • Math 对象

    Math 用于执行数学任务 不像 Date 和 String 那样是对象的类 因此没有构造函数 Math 方法 Math ceil 对小数进行上舍入 Math ceil 25 5 返回26 Math ceil 25 5 返回 25 Math
  • 如何使用百度baidu对某个特定网站进行站内搜索/检索

    很多网站自己提供了站内搜索 检索的功能 比如说GitHub或一些购物网站 但是也有很多网站并没有提供站内检索的功能 此时可以利用百度baidu对特定的网站进行检索 方法很简单 在要检索的关键字前加上inurl 和网址即可
  • 【Qt Creator快速入门第三版学习笔记】——第1章 Qt Creator简介

    第1章 Qt Creator简介 文章目录 第1章 Qt Creator简介 前言 1 1 Qt Creator的下载与安装 1 2Qt Creator环境介绍 1 2 1 主界面介绍 1 菜单栏 Menu Bar 2 模式选择器 Mode