在Qt Creator里正确引用自定义控件. 现总结如下:
由于windows版的Qt Creator使用微软VC编译器编译, 所以当在Qt Creator下使用mingw 编译器编译自定义控件并将生成的dll文件复制粘贴至Qt Creator插件目录下后, 重启Qt Creator后在QtDesigner的控件列表中无法显示自定义控件. 解决办法有两种:
方法一: 下载Qt Creator源代码,然后使用mingw编译器重新编译mingw版本的Qt Creator.
方法二: 安装 微软VC 编译器, 然后在QtCreator中通过配置使用微软VC编译器重新编译生成自定义控件.
如何在Qt工程中正确地引用用户自定义控件:
1) 通过Qt Creator向导创建自定义控件工程.
2) 将自定义控件工程使用的编译器配置为与当前Qt Creator被编译时使用的编译器一致(MingW 或 微软VC编译器).
3) 默认情况下自定义控件工程并不将自定义控件接口暴露出来, 通过在自定义控件类头文件的类声明中增加QDESIGNER_WIDGET_EXPORT宏, 来将自定义控件类的接口暴露出来. 要使用该宏还要在自定义类的头文件中添加: #include <QtDesigner/QtDesigner> 例如:
#ifndef MYWIDGET6_H
#define MYWIDGET6_H
#include <QtDesigner/QtDesigner>
#include<QWidget>
class QDESIGNER_WIDGET_EXPORT MyWidget6 :public QWidget
{
Q_OBJECT
public: