qt creator源码全方面分析(2-7)
Completing Code
在编写代码时,Qt Creator建议使用属性,ID和代码段来补全代码。 它为当前光标所在的语句提供了上下文相关建议的列表。 按Tab或Enter键接受所选建议并补全代码。
下图显示了有关补全C++代码的建议:

下图显示了有关补全QML代码的建议:

要随时打开建议列表,请按Ctrl + Space。 如果只有一个选项可用,则Qt Creator会自动将其插入。
手动调用补全功能时,Qt Creator会补全建议列表的通用前缀。 这对于具有多个相似名称成员的类特别有用。 要禁用此功能,请在代码完成首选项中取消选中自动补全通用前缀。 选择工具>选项>文本编辑器>补全。
默认情况下,代码补全不考虑大小写。 要应用全部或首字母大小写敏感,请在区分大小写字段中选择全部或首字母。
补全代码片段
代码片段由您指定值的多个变量组成。 在列表中选择一个条目,然后按Tab键或Enter键以补全代码。 按Tab键可在变量之间移动并为其指定值。 为变量指定值时,代码片段中变量的所有实例都将重命名。
下图显示了C ++代码段:

下图显示了QML代码片段:

编辑代码片段
代码片段指定了代码构造。 您可以在代码片段编辑器中添加,修改和删除代码段。 要打开编辑器,请选择工具>选项>文本编辑器>片段。
下图显示了内置的C++代码片段:

下图显示了内置的QML代码片段:

Qt Creator为您提供以下类别的内置片段:
- 文本片段,可以包含任何文本字符串。 例如,代码注释
- C++代码片段,用于指定C++代码结构
- CMake代码片段,在CMake编辑器中编辑CMakeLists.txt文件时可以使用
- QML代码片段,用于指定QML代码结构
- Nim代码片段,用于指定Nim代码结构
添加和编辑片段
在列表中选择一个片段,在片段编辑器中对其进行编辑。要添加新的代码段,请选择添加。 指定一个触发器,如果该触发器已在用,则指定一个可选变量,该变量在编写代码时显示在建议列表中。 同时在片段编辑器中,根据片段类别,指定文本字符串,C++或QML代码构造。 您可以在片段中使用预定义变量。 片段编辑器为您提供:
高亮
缩进
括号匹配
基本代码补全
用以下格式指定代码片段的变量:
$variable$
用以下格式指定Qt Creator的变量:
%{variable}
例如,以下变量将扩展为当前项目的名称:%{CurrentProject:Name}
在代码片段内使用唯一的变量名称,因为在为变量指定值时,该变量的所有实例都被重命名。
要确定您在片段中输入的值的大小写,请使用以下修饰符:
- :c 将字符串的首字母转换为大写
- :l 将字符串转换为小写
- :u 将字符串转换为大写
例如,添加以下行到class代码片段,来指定将函数名称,那么名称将全部转换为小写字母,而不管你是如何指定$name$变量的值:
void $name:l$() {}

片段编辑器不检查您编辑或添加的片段的语法。 但是,当您使用代码片段时,代码编辑器将所有错误,标记为红色下划线。
要放弃对内置代码片段所做的更改,请选择还原到内置。
删除片段
多个类似的内置片段,用于不同的目的。 要在编写代码时缩短建议列表,请删除不需要的内置代码片段。 如果后续需要了,可以还原。
要删除片段,请在列表中选择一个片段,然后选择删除。 要还原已删除的代码片段,请选择恢复被删除的内置。
重置片段
要删除已添加片段,并恢复已删除片段,请选择重置所有。
注意:如果现在选择Ok或Apply按钮,则将永久丢失所有你自己编写的片段。
补全Nim代码
您可以使用 Nimsuggest 工具,来查询.nim源文件,并获取代码补全建议。
要使用Nimsuggest,必须在PC开发机上进行安装。 然后选择工具>选项>Nim>工具,然后在路径字段中,输入可执行文件的路径。
原创造福大家,共享改变世界
献出一片爱心,温暖作者心灵

qt creator源码全方面分析(2-7)的更多相关文章
- qt creator源码全方面分析(3-3)
目录 qtcreatordata.pri 定义stripStaticBase替换函数 设置自定义编译和安装 QMAKE_EXTRA_COMPILERS Adding Compilers 示例1 示例2 ...
- qt creator源码全方面分析(3-5)
目录 qtcreatorlibrary.pri 使用实例 上半部 下半部 结果 qtcreatorlibrary.pri 上一章节,我们介绍了src.pro,这里乘此机会,把src目录下的所有项目文件 ...
- qt creator源码全方面分析(0)
本人主攻C++和Qt. 上两天刚研究完Qt install framework(IFW)应用程序安装框架. google没发现有正儿八经的官方文档的翻译,我就进行了翻译哈!! 系列文章具体见:http ...
- qt creator源码全方面分析(4-0)
Qt系统 Qt Creator源码是在Qt对象和框架基础下写的,因此,阅读Qt Creator源码,你首先对Qt得有一定的了解. Qt Core Qt Core特征: The Meta-Object ...
- qt creator源码全方面分析(4-2)
目录 global头文件 global.h xx.h global头文件 插件的本质就是动态链接库,对于库,需要导出符号,供用户导入使用.在qt creator的源码中,存在固定的导入导出模式. gl ...
- qt creator源码全方面分析(4-5)
目录 Qt中的字符串 QLatinString 详细介绍 源码 小结 QStringLiteral(str) 详细介绍 源码 小结 Qt中的字符串 Qt中处理字符串最常用的肯定是QString,但是在 ...
- qt creator源码全方面分析(4-6)
目录 Qt插件基础 Qt插件基础 我们知道Qt Creator源码是基于插件架构的,那么我们先来介绍下插件基础知识. 相关内容如下: How to Create Qt Plugins [ - Defi ...
- qt creator源码全方面分析(3-2)
目录 qtcreator.pri 判断重复包含 定义版本信息 VERSION 定义IDE名称 启用C++14 CONFIG 自定义函数 Replace Functions Test Functions ...
- qt creator源码全方面分析(2-10-1)
目录 Getting and Building Qt Creator 获取Qt 获取和构建Qt Creator Getting and Building Qt Creator 待办事项:应该对此进行扩 ...
随机推荐
- oracle mysql sql 根据一张表更新另一张表
update CDINFO.Dept_Dict tab1 set PART_FLAG = (select PART_FLAG from DICT.DEPARTMENT_DICT@zyhis4 tab2 ...
- 在64位ubuntu上安装tensorflow
首先从ubuntu14.04的安装讲起 1.下载ubuntu14.04 64位的系统,下载地址如下: http://www.ubuntu.com/download/desktop 2.下载好64位的u ...
- 为QLabel增加Clicked信号
QT为QLabel添加Click事件(如果我们使用组件,我们关心的是信号槽:如果我们自定义组件,我们关心的是事件) 其实就是改写了一个函数:mouseReleaseEvent,当在QLabel放开鼠标 ...
- 手动滑稽之golang-vmware-driver广告篇
本来在Windows 7 + Tiny Linux 4.19 + XFS + Vmware Workstation 15 (PRO) 下篇dockerの奥义之后的UEFI补完延迟了... 虽然用efi ...
- 开源项目SMSS开源项目(三)——protobuf协议设计
本文的第一部分将介绍protobuf使用基础以及如何利用protobuf设计通信协议.第二部分会给出smss项目的协议设计规范和源码讲解. 一.Protobuf使用基础 什么是protobuf pro ...
- 1、使用 as 而不要用 is
public class ShouldAsNotIs { public void ShouldAs() { object a = new ShouldAsNotIs(); var b = a as S ...
- 为什么双击打开py文件时窗口瞬间关闭了?
当前理解,py文件里没有input() 等暂停程序运行的函数,程序运行速度太快,运行完就立马关闭了. input()调用后,程序会立即暂停,等待用户输入
- 递推预处理 + Manacher
链接:https://www.nowcoder.com/acm/contest/131/D来源:牛客网 字符串 S 只包含小写英文字母.有四种操作,每次操作你可以选择其中一种: 删除字符串的第一个字母 ...
- Java设计模式之三种工厂模式
工厂模式实现了创建者和调用者的分离,实现了更好的解耦. 详细分类: 1) 简单工厂模式(静态工厂模式): 2) 工厂方法模式: 3) 抽象工厂模式 面向对象设计的基本原则: 1) OC ...
- python 文件监听
对文件进行监听.过滤 def tail(filename): f = open(file=filename, mode='r', encoding='utf-8') # 打开文件不能用with,因为监 ...