前言
浏览了很多帖子,看了很多博主的教程,每一个都写的很好,美中不足的是。Qt在每次自定义插件时都需要拷贝,如果能够利用qmake install拷贝功能就很完美了,在其他人使用的时候只要简单的几个步骤就能轻松的用起来,岂不美哉。
新建一个qt4设计师自定义控件的方法我就不在此赘述了,本文章只针对.pro文件做一定处理,使得每个人都能轻松使用qt自定义控件这个功能。
步骤一
按照如下图所示编写.pro文件
CONFIG += plugin debug_and_release
TARGET = $$qtLibraryTarget(qlabellineplugin)
TEMPLATE = lib
HEADERS = qlabellineplugin.h
SOURCES = qlabellineplugin.cpp
RESOURCES = icons.qrc
LIBS += -L.
greaterThan(QT_MAJOR_VERSION, 4) {
QT += designer
} else {
CONFIG += designer
}
include(qlabelline.pri)
#获取qmake路径:C:/Qt/Qt5.6.3.64/5.6.3/msvc2013_64
QmakePath=$$[QT_INSTALL_PREFIX]
#获取父目录:C:/Qt/Qt5.6.3.64/5.6.3
QmakeParentDir=$$dirname(QmakePath)
#获取父目录的上层目录:C:/Qt/Qt5.6.3.64
QmakeGrandpaDir = $$dirname(QmakeParentDir)
#非特殊情况,QtCrator的Tools目录都在QmakeGrandpaDir的下一级目录
QtCreatorDesignerInstallPath = QmakeGrandpaDir/Tools/QtCreator/bin/plugins/designer
#拷贝dll库至C:/Qt/Qt5.6.3.64/Tools/QtCreator/bin/plugins/designer
target.path += $$QtCreatorDesignerInstallPath
#拷贝头文件至C:/Qt/Qt5.6.3.64/5.6.3/msvc2013_64/include目录下
header.path = $$[QT_INSTALL_HEADERS]
header.files += $$PWD/qlabelline.h
DESTDIR =$$PWD/dll
#拷贝lib库至C:/Qt/Qt5.6.3.64/5.6.3/msvc2013_64/lib目录下
lib.path = $$[QT_INSTALL_LIBS]
lib.files += $$DESTDIR/qlabellineplugin.lib
#拷贝dll库至C:/Qt/Qt5.6.3.64/5.6.3/msvc2013_64/bin目录下
dll.path = $$[QT_INSTALL_LIBEXECS]
dll.files += $$DESTDIR/qlabellineplugin.dll
#拷贝
INSTALLS += target
INSTALLS += header
INSTALLS += lib
INSTALLS += dll
步骤二
添加install命令参数
步骤三
构建