Qt自定义设计器插件 - 不正确导出小部件

时间:2018-03-16 23:16:09

标签: c++ qt

我有一个项目可以生成一个在QtDesigner中使用的插件。我还在一个单独的项目中使用相同的窗口小部件类,因此我可以生成一个在应用程序端使用的库。基本上,我所做的是定义我的所有类:

#include <QtUiPlugin/QDesignerExportWidget>

class QDESIGNER_WIDGET_EXPORT QtMaterialWidget: public QWidget
{
    Q_OBJECT
}; 

这些类在以任何方式从QWidget派生的类中实现,因此有不同的变体。

当我构建插件时,这很有用,并且没有问题。但是,在构建库时,我遇到了大量与C4273: 'QtMaterialWidget::qt_static_metacall': inconsistent dll linkage相关的错误。我尝试将其从QDESIGNER_WIDGET_EXPORT切换到Q_WIDGETS_EXPORT而没有任何改进。

  

我是否必须以这些方式导出这些小部件?

     

有没有更好的方法来做到这一点。

以下是这两个项目:

图书馆计划&amp;码: https://github.com/NickJohn547745/MaterialWidgetsLibrary

插件项目&amp;码: https://github.com/NickJohn547745/MaterialWidgetsPlugin

小部件代码: https://github.com/NickJohn547745/MaterialWidgets

0 个答案:

没有答案