Qt Creator 默认的 ID 为 org.qt-project.Qt.QtCreatorPlugin,每个插件加载时通过宏进行设置 class CorePlugin : public ExtensionSystem::IPlugin{ Q_OBJECT Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "Core.json")}宏展开后:#define Q_PLUGIN_METADATA(x) QT_ANNOTATE_CLASS(qt_plugi...
Qt Creator默认的 ID 为org.qt-project.Qt.QtCreatorPlugin,每个插件加载时通过宏进行设置 class CorePlugin : public ExtensionSystem::IPlugin { Q_OBJECTQ_PLUGIN_METADATA(IID "org.qt-project.Qt.QtCreatorPlugin" FILE "Core.json") } 宏展开后:#defineQ_PLUGIN_METADATA(x)QT_ANNOTATE_CLASS(qt_plugin_...
具体怎么配置,后面会讲解到)qtcreator.pro文件是主工程文件,要打开编译源码也是需要打开该工程文件进行加载的“PS: 涉及到 qbs 相关内容可以不用关注了,Qt Build Suite 也是一种跨平台的编译工具,目前使用较少无需关注框架结构下面来详细看下工程结构是如何管理的,以及整个框架原理使用 Qt Creator 打开工程后你...
在上一篇大概了解了关于Qt Creator基础知识后^1,本篇先学习下框架基本结构,这样能够清晰的知道这个框架当中包含那些文件、文件夹、工程文件,这些文件分别代表什么意思以及有什么作用 文件结构 打开下载好的源码,如下目录所示 可以看出来,文件和文件夹很多,不要被这些表面吓着,我们真正需要关心的没有几个,需要重点关注...
Qt Creator插件理解起来其实很简单,定义一个接口类作为基类,其他插件需要继承该类实现对应的虚方法,每个插件作为独立子工程编译后生成对应的动态库 image 主函数加载每个插件对象,然后转化为对应插件实例 QPluginLoaderloader(pluginName);loader.load();IPlugin*pluginObject=qobject_cast<IPlugin*>(loader.instance())...
Qt Creator 源码学习笔记 01 Qt Creator 是一款开源的轻量级 IDE,整个架构代码全部使用 C++/Qt 开发而成,非常适合用来学习C++和Qt 知识,这也是我们更加深入学习Qt最好的方式,学习了解官方人员是如何开发一款软件的 下载 一般我们下载Qt进行安装的时候会默认安装好Qt Creator,此时安装的是可执行程序,而我们今天要讲的...
通过这种方式下载下来直接解压就能看到整个框架源码 image 另一种通过git方式下载源码更推荐,下载下来后你相当于拥有了所有版本的源码了,想要学习那个版本直接切换就行了,非常方便,下载地址有两个 官方:https://code.qt.io/cgit/qt-creator/qt-creator.git ...
Qt Creator 源码学习笔记02,认识框架结构结构 libs工程封装了一些外部使用的方法和函数,以动态库的方式呈现,调用时引入动态库加入头文件即可。具体是怎么加入的呢?阅读源码你发现其它子工程并没有直接引入,关键点还是上面提到的依赖管理方法 每个子工程都有自己的依赖配置文件,比如aggregation_dependencies.pri,这个文件必须...
后面我们会看到各种各样的插件,比如你打开Qt Creator的时候首页显示的内容,也是单独的一个插件,名字叫做weilcome 每个插件都有一个标识ID,用来区分是你自己写的插件,防止别人恶意修改插件 Q_PLUGIN_METADATA(IID"org.qt-project.Qt.QtCreatorPlugin"FILE"Core.json") Q_PLUGIN_METADATA(IID"org.qt-project.Qt.QtC...
在上一篇大概了解了关于Qt Creator 基础知识后^1,本篇先学习下框架基本结构,这样能够清晰的知道这个框架当中包含那些文件、文件夹、工程文件,这些文件分别代表什么意思以及有什么作用 文件结构 打开下载好的源码,如下目录所示 可以看出来,文件和文件夹很多,不要被这些表面吓着,我们真正需要关心的没有几个,需要重点关注...