Qt基础之二十四:深入理解插件系统

Qt基础之二十四:深入理解插件系统

一.Qt中的插件

Qt提供了两类API来创建插件: ☆high-level API用于创建Qt自身的扩展,比如说自定义数据库驱动、图像格式、文本编码、样式,等等 ☆low-level API用于扩展Qt应用程序 如果你想为Qt Designer提供插件,可以参考Qt Assistant:Qt Designer Manual

1.high-level API

通过子类化合适的插件基类,然后重写一些函数、添加一个宏,就能扩展出一个插件。常用的插件基类包括QSqlDriverPlugin、QStylePlugin、QAudioSystemPlugin等等。 详见Qt Create中提供的例子:Style Plugin Example

2.low-level API

包括以下步骤的应用程序可以通过插件来扩展: ①定义一个只包含纯虚函数的接口类,这些接口用于和插件交互 ②使用Q_DECLARE_INTERFACE()宏告将这个接口告知Qt元对象系统 ③使用QPluginLoader加载插件 ④使用qobject_cast()测试插件是否实现了这个接口 写一个插件包括以下几个步骤: ①声明一个继承自QObject和上面提到的接口 ②使用Q_INTERFACES()宏告将这个接口告知Qt元对象系统 ③使用Q_PLUGIN_METADATA()宏导出插件 ④编译插件,注意.pro文件的写法 详见Qt Create中提供的例子:Echo Plugin E

🎀 相关推荐

瑞兹万圣节皮肤价钱
365bet官方投注网址

瑞兹万圣节皮肤价钱

📅 08-13 👀 1296
【焕新服】6月12日例行更新维护公告
365bet官方投注网址

【焕新服】6月12日例行更新维护公告

📅 07-14 👀 4187
欧洲十大体育场,德国占三席,意大利和西班牙各两席