Qt下属性开源库QtPropertyBrowser移植到VS平台生成DLL使用记录

  • 网上查看了很多资料,使用这个库在Qt creator 平台下挺方便,直接include进来就可以,但是要转到VS平台时遇到了问题。
    一. 首先这个库的获取途径,在github上可以下载
    qt官方维护的qtpropertybrowser源码
    或者 安装Qt时候选择源码安装,地址:
    D:\Qt\Qt5.9.3\5.9.3\Src\qttools\src\shared\qtpropertybrowser
    二. 使用方法:
    直接用VS Qt 插件打开是不行的。打开是将QtPropertyBrowser的文件包含进来,而不是生成DLL项目。项目直接使用源文件得包含pri。
    1.生成DLL
    修改qtpropertybrowser.pro 模板改为 lib,TEMPLATE=lib 如下:
#TEMPLATE=subdirs
#CONFIG += ordered
#include(common.pri)
#qtpropertybrowser-uselib:SUBDIRS=buildlib
#SUBDIRS = buildlib
#SUBDIRS+=examples

TEMPLATE=lib
CONFIG += qt dll qtpropertybrowser-buildlib
mac:CONFIG += absolute_library_soname
#win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += debug_and_release build_all
include(src/qtpropertybrowser.pri)
TARGET = $$QTPROPERTYBROWSER_LIBNAME
DESTDIR = $$QTPROPERTYBROWSER_LIBDIR

INSTALL_LIBRARY_PATH = $$OUT_PWD/../../../../HmiFuncDesignerBin/bin

win32 {
    DLLDESTDIR = $$INSTALL_LIBRARY_PATH
    QMAKE_DISTCLEAN += $$INSTALL_LIBRARY_PATH/$${QTPROPERTYBROWSER_LIBNAME}.dll
}
#target.path = $$DESTDIR
target.path = $$INSTALL_LIBRARY_PATH
INSTALLS += target

打开成功后编译,毫无疑问,出错,没有生成DLL。解决:
在qtpropertybrowser.h 加上#define QT_QTPROPERTYBROWSER_EXPORT 编译成功;
输出dll,记得查看选择编译lib,或者编译成dll。
选择lib时,使用这个库没问题,但是选择dll时就会报链接出错
一大堆链接出错

原因是qtpropertybrowser.h没有加上#define QT_QTPROPERTYBROWSER_IMPORT 。将头文件复制到Include文件夹下,打开qtpropertybrowser.h,修改后
使用如下

#include "Include/qtbuttonpropertybrowser.h"
#include "Include/qteditorfactory.h"
#include "Include/qtgroupboxpropertybrowser.h"
#include "Include/qtpropertybrowser.h"
#include "Include/qtpropertybrowserutils_p.h"
#include "Include/qtpropertymanager.h"
#include "Include/qttreepropertybrowser.h"
#include "Include/qtvariantproperty.h"


#ifdef  _DEBUG
#pragma comment(lib,"QtPropertyBrowserd.lib")
#else
#pragma comment(lib,"QtPropertyBrowser.lib")
#endif

嫌麻烦的可以直接在vs界面预编译器那里直接加上QT_QTPROPERTYBROWSER_IMPORT。

2.将源文件加入项目中直接使用,包含pri
方法如下:
a.新建工程
b.导出pro
导出pro
c,在导出的pro 直接include qtpropertybrowser.pri

include($$[QT_INSTALL_PREFIX]/../Src/qttools/src/shared/qtpropertybrowser/qtpropertybrowser.pri)

上面的路径是包含qt源码下的Pri。
综上,做个简单的记录,尝试下写写文字,敲敲键盘。

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值