C++VS ui界面动态库
- 新建QT lib
加入QT gui 和 QT core - 不要点击生成lib静态
- 新建完成删除.h .cpp文件。记住名字。
- 右击添加类-》QT4guiclass 类名字填写刚才那个名字一致即可。
- 设置导出 testlib_global.h 文件下 复制TESTLIB_EXPORT
- testlib.h 引入
#include “testlib_global.h”
class TESTLIB_EXPORT testLib : public QWidget
7. 加入按钮和槽函数
void testLib::on_okButton_clicked()
{
qDebug() << “TEST LIB TESTLIB!!!”;
}
8. 生成
完成了创建动态库
3个h文件
lib文件
dll文件
9. 新建正常的QT gui项目
10. 项目目录下新建include ,lib文件,h文件放inde ,lib,dll 文件放到lib 里。
11. 点击调试
12. 项目属性中包含目录,库目录,添加依赖项
13. ui文件添加按钮事件 添加一个stackedWidget
void LibUser::on_anBtn_clicked()
{
ui.stackedWidget->setCurrentIndex(1);
}
注意ui后 是 . stackedWidget 后面是 ->
14. cpp中 引入
#include “testlib.h”
LibUser::LibUser(QWidget *parent, Qt::WFlags flags)
: QMainWindow(parent, flags)
{
ui.setupUi(this);
testLib *w = new testLib;
w->show();
}
testLib 为动态库类名字
注意:::
C++动态库再调用时:
UpdatePwd *w = new UpdatePwd(std::string(“11112”));
w->show();
写为指针,不然一闪而过,如果报错LINK2019 查看是否再类前面加入了 PLUGIN_UPDATEPWD_API 导出。
C++VS ui界面动态库
http://zanderchan666.github.io/2023/10/01/C++ ui界面动态库及调用/