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

news2024/11/24 19:37:24

[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

image-20221212231904671

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

image-20221212232037126

(3)选择C++Library

image-20221212232318935

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

image-20221212232405626

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

image-20221212232551312

(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的引用

image-20221212233046977

(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文件中即可


  1. 可视化界面新增插件 TODO

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/84437.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GO语言基础介绍

go语言的GMP模型(协程并发模型),P是go语言本身内部实现的调度器,它是基于协程队列的,协程在调度器面前就类似一个个独立的任务;P一般数量上是处理器内核数。Process本身有调度和创建M的能力,它会…

Web3中文|迪士尼前任CEO回归,能否带领迪士尼开辟web3之路?

据国外媒体报道,11 月 21 日,当地时间周日晚间,迪士尼宣布首席执行官(CEO)鲍勃 查佩克(Bob Chapek)离职,而其前任鲍勃 伊格尔(Bob Iger)将重返迪士尼CEO一职…

Navicat 16 和表空间 - Part 2

如何运作 "What is it? Its it" - Epic, Faith No More 欢迎回到这个关于在 Navicat 16 中使用表空间的系列。第 1 部分介绍了表空间的一些优点,包括可恢复性、轻易添加更多表、自动存储管理以及在隔离缓冲池中数据以提高性能或内存利用率。而第二部分…

Spring boot 3 GraalVM Native Image

Spring boot 3 && GraalVM Native Image 什么是 GraalVM? GraalVM is a high-performance JDK designed to accelerate the execution of applications written in Java and other JVM languages while also providing runtimes for JavaScript, Python, and a numb…

Seata模式-tcc

Seata模式目录概述需求:设计思路实现思路分析1.tcc模式2.一阶段 prepare 行为参考资料和推荐阅读Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make a better result,wait for change,c…

qiankun 部署微前端-vue2 (二)

对于基本的部署问题,也可以去官网查找答案: 常见问题 - qiankun 这里主要记录在部署过程中遇到的问题 一、路由权限问题 无论主应用路由还是子应用中的路由,都会涉及权限问题,并不是每个路由路径对任何角色都是可见&#xff0…

Linux学习-83-MySQL安装过程

17.12 MySQL安装 作为LAMP架构的后端,是一款流行的开源关系数据库系统。在企业网站、业务系统等应用中,各种账户信息、产品信息,客户资料、业务数据等都可以存储到MySQL数据库,其他程序可以通过SQL语句来查询,更改这些…

〖产品思维训练白宝书 - 产品思维认知篇①〗- 产品思维能够为我们带来多大的价值?

大家好,我是 哈士奇 ,一位工作了十年的"技术混子", 致力于为开发者赋能的UP主, 目前正在运营着 TFS_CLUB社区。 💬 人生格言:优于别人,并不高贵,真正的高贵应该是优于过去的自己。💬 &#x1f4e…

算法竞赛入门【码蹄集进阶塔335题】(MT2026-2050)

算法竞赛入门【码蹄集进阶塔335题】(MT2026-2050) 文章目录算法竞赛入门【码蹄集进阶塔335题】(MT2026-2050)前言为什么突然想学算法了?为什么选择码蹄集作为刷题软件?目录1. MT2026 二维坐标点移动2. MT2027 一秒成零3. MT2028 小…

开关量转4G模块直接阿里云操作介绍

开关量转4G模块直接阿里云操作介绍首先,设备接入阿里云阿里云的连接 同上,配置阿里云平台参数前,和华为云一样,首先要在阿里云控制台创建产品,添加设备获取设备证书 上云流程:创建产品--添加设备--获取证书…

USACO简介

USACO是美国信息学奥赛官网,网站为:USACO 其中还包括USACO TRAINING题目,这是一个可以做练习的网站,网站为USACO Training Gateway 进入USACO网站,我们可以看到以下图片 下来简要说一下关于USACO的注意事项 1.USACO…

python-(6-5-3)爬虫---处理防盗链获取视频

文章目录一 需求二 分析1 拿到contId2 拿到video_status返回的json -----> src Url3 对src Url 进行修整4 下载资源三 代码一 需求 想要获得某处的视频资源,但由于防盗链的存在,使得在使用浏览器的开发页面获得的视频地址与我们实际获取的地址产生差…

Spring源码深度解析十四:@Aspect方式的AOP上篇 - @EnableAspectJAutoProxy

一、前言 文章目录:Spring源码深度解析:文章目录 二、简介 Aop 即面向切面编程,而 Aspect 是Aop 思想的一种实现。 并不是所有的AOP框架都相同,它们在连接点模型上可能有强弱之分,有些允许在字段修饰符级别的应用通…

分享a股下单接口执行买入操作的流程代码

用户在使用a股下单接口&#xff0c;能够得到更多更准确的信息&#xff0c;让用户在股市当中&#xff0c;操作起来更加便捷和有效&#xff0c;对股市市场行情动向判断更加的准确一些。 下面看一下a股下单接口是如何执行买入操作的功能&#xff1a; std::cout << " …

小程序批发订货怎么做

小程序订货系统 批发订货是每个生产企业都不少不了的一个环节&#xff0c;伴随着信息化技术的不断更新&#xff0c;传统的订货方式已经不能满足生产企业的需求了&#xff0c;而鲜桥小程序订货系统基于微信生态&#xff0c;让你即买即用&#xff0c;轻松告别传统的订货方式&…

Java解析NC2018-2020降水量格点数据

经纬度范围 lon = 7849;lat = 5146;time = 12;double lon(lon=7849); :long_name = "longitude"; :unit = "degree"; double lat(lat=5146); :long_name = "latitude"; :unit = "degree"; double time(time=12); :long_nam…

【论文】Holistically-Nested Edge Detection

文章目录Development of Edge DetectionMulti-scale learning structureLoss FunctionNetwork Architecture&#x1f4c4;&#xff1a;Holistically-Nested Edge Detection&#x1f517;&#xff1a;https://openaccess.thecvf.com/content_iccv_2015/html/Xie_Holistically-Ne…

DSP篇--C6701功能调试系列之SRAM、ADC、喂狗测试

目录 1、SRAM测试 1.1 SRAM读写功能测试 1.2 EDAC测试 2、ADC测试 3、DSP喂狗测试 调试的前期准备可以参考前面的博文&#xff1a;DSP篇--C6701功能调试系列之前期准备_nanke_yh的博客-CSDN博客https://blog.csdn.net/nanke_yh/article/details/128277631 1、SRAM测试 1…

国税局验证码识别 识别不了我还不能input吗

前言 最近接到一个需求&#xff0c;就是在国税局的网页中输入 【发票代码】、【*发票号码】、【*开票日期】、【*开具金额(不含税)】、【*验证码】 然后将此发票进行下载&#xff0c;但是【验证码】真的是拦路虎啊&#xff0c;我也查询了好多大佬的论文&#xff0c;有的是通过J…

OTP语音芯片ic的工作原理,以及目前的现状和技术发展路线是什么?flash型

目录 otp工艺和flash工艺的区别和概念 衡量一个芯片的成本&#xff0c;简单可以归结为3个方面 芯片的生产工艺&#xff0c;比如OTP的工艺都是100nm左右的工艺、8寸晶圆&#xff0c;很便宜。并且OTP的技术需要光刻机光照的次数少&#xff0c;所以生产起来快&#xff0c;这样无…