插件代码
接口类头文件 MyPluginInterface.h
#ifndef INTERFACES_H
#define INTERFACES_H
#include
#define QtPluginDemo_iid "org.qt-project.Qt.PluginDemo"
class MyPluginInterface
{
public:
virtual int add(int,...
如何开发Qt插件,可以在Qt Assistant 中搜索"Qt Plugins"或"How to Create Qt Plugins",看看那篇manual中的介绍。
其中涉及到了几个宏
Q_DECLARE_INTERFACE( ClassName, Identifier)
This macro associates the given Identifier (a string li...
分类:
其他好文 时间:
2014-11-21 06:59:25
阅读次数:
195
QLibraryPrivate 类的重要性
Qt中能加载库或插件的几个类:
QLibrary ,
QPluginLoader ,
QFactoryLoader ,
QStaticPlugin (暂时不研究这个)
QLibrary 和 QPluginLoader 依赖的'私有数据类'都是 QLibraryPrivate, 一个QL...
分类:
其他好文 时间:
2014-11-21 06:58:40
阅读次数:
305
JSON 与Qt插件的元信息 MetaData
Qt插件的源码中,基本都能见到一个 xxx.json 的文件,这个文件中通常只包含一句:
{
"Keys": [ "yyy" ]
}
我们可以猜到这个文件中的"Keys"应该是指定了与插件相关的关键字。那这个 .json 文件到底是如何起作用的?
先来认识一下 JSON .
JSON是一种存储结构化数据的格式,它...
分类:
Web程序 时间:
2014-11-21 06:57:40
阅读次数:
329
Qt的源码中通过 QFactory、QPlugin 和 Q 这三个类实现了Qt的插件加载机制,
这个机制可用于加载特定种类的插件。比如通过 QPlatformIntegrationFactory\QPlatformIntegrationPlugin\QPlatformIntegration
三个类可以实现平台类QPA插件(PlatformIntegration)的加载,通过QPlatformI...
分类:
其他好文 时间:
2014-11-20 01:34:19
阅读次数:
333
在Qt的插件加载机制的概述中,我已经提到过,一个QFactory 类往往对应于某一类别、或某种特定功能的插件。
在Qt中,为了区分不同类别、不同功能的插件,应该为每一类插件设置一个独特的 IID 值,这个IID值通常
是一个长字符串。属于同一类的插件应该具有相同的IDD值。比如,所有平台类QPA插件,包括LinuxFB插件(QLinuxFbIntegration)、
XCB插件(QXcbIn...
分类:
其他好文 时间:
2014-11-20 01:30:18
阅读次数:
893
一、下载 ant 插件,路径如下: http://ant.apache.org/bindownload.cgi 二、安装 ant 插件,解压下载下来的 ant 插件,配置环境变量(最好系统环境变量),如下: ANT_HOME:D:\learn_tool\apache-ant-1.9.4 还要将 an...
分类:
其他好文 时间:
2014-11-15 16:42:57
阅读次数:
165
1、开发环境:安装Qt5.3.2(离线安装包安装);VS版本为:2010 SP1Rel;源代码默认保存格式为GB2312。2、输出乱码的代码#include #include int main(int argc, char *argv[]){ QCoreApplication a(argc, ...
分类:
其他好文 时间:
2014-11-14 21:08:27
阅读次数:
392
Qt4过渡到Qt5的项目一开始就受阻,记录一下遇到的下面的问题--->编译遇到类似错误:error:QCalendarWidget:Nosuchfileordirectory
error:QComboBox:Nosuchfileordirectory
error:QDateEdit:Nosuchfileordirectory解决方案如下:1.在*.pro文件里添加:QT+=widgets2.修改#incl..
分类:
其他好文 时间:
2014-11-13 19:10:17
阅读次数:
122
1、windows环境,下载离线安装包安装;2、安装Qt5 Visual Studio Add-in并安装;3、环境变量里设置QTDIR=D:\LIB\Qt\Qt5.3.2\5.3\msvc2010_opengl;4、在解决方案/“通用属性”/“调试源文件”里,“设置包含源代码的目录”中增加Qt5的...
分类:
其他好文 时间:
2014-11-13 18:43:49
阅读次数:
151