[DT框架使用教程01]如何在DT框架中创建插件

时间:2022-12-13 11:02:47
  1. [DT框架使用教程01]如何在DT框架中创建插件

DT框架代码地址: ​​https://github.com/huifeng-kooboo/DT​

由于国内访问速度的问题 也可以访问gitee的地址: ​​https://gitee.com/huifeng_github/DT​

DT框架是基于QT框架衍生出的组件化框架。

对于想具体了解DT框架的同学,介绍可以查看​​该处​​ 访问链接: ​​https://blog.csdn.net/Giser_D/article/details/128235728​


目前针对于DT框架创建插件的话,可以使用两种方式进行创建


  1. 采用​​QtCreator​​可视化界面进行创建

(1)使用QtCreator 打开​​Plugins.pro​

[DT框架使用教程01]如何在DT框架中创建插件

(2)右键​​plugins.pro​​ 点击新建子项目

[DT框架使用教程01]如何在DT框架中创建插件

(3)选择​​C++Library​

[DT框架使用教程01]如何在DT框架中创建插件

(4) 输入名称 这边为了演示 选择​​demo​

[DT框架使用教程01]如何在DT框架中创建插件

(5)一路下一步 可以看到插件补充进去了

[DT框架使用教程01]如何在DT框架中创建插件

(6)修改​​demo.pro​​参数

# 添加依赖的静态库
win32::LIBS += $$PWD/../../bin/libcommon.a
win32::LIBS += $$PWD/../../bin/libdtui.a

# 生成文件路径
DESTDIR = $$PWD/../../bin/plugins/
# 生成文件名称
TARGET = demo

HEADERS += ../plugins_base/pluginsmanager_base.h \ # 添加plugin_base的引用

[DT框架使用教程01]如何在DT框架中创建插件

(7)​​demo.h​​ 进行调整

#ifndef DEMO_H
#define DEMO_H

#include "demo_global.h"
#include "pluginsmanager_base.h"


#define PLUGIN_Demo_IID "Plugin.Demo"
class DEMO_EXPORT Demo: public DTPluginBase
{
Q_OBJECT
Q_PLUGIN_METADATA(IID PLUGIN_Demo_IID)
public:
Demo(QObject* qobj=nullptr);

void loadUI() override;

public:
void slotEventFromPlugins(const PluginMetaData& plt) override;
QVariant slotHandleMessage(const PluginMetaData &plt) override;

};

#endif // DEMO_H

(8)编译生成插件


  1. 复制框架用例的插件(推荐)
    复制框架用例的插件,进行修改名称等,加入plugins.pro文件中即可