QT5.9创建子项目,调用带界面的dll库

1.创建子项目project.即主项目名称。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.创建带界面的子项目app.pro。用于主界面显示。
2.1 创建注意事项
选择Application------Qt Widgets Application
界面继承 QMainWindow
子项目添加到 project.pro(主项目目录下)

在这里插入图片描述
2.2.在带界面的子项目中 设置目录路径

在app.pro文件中添加如下语句:

CONFIG(debug,debug|release){
DESTDIR = ../bin/MyDebug
LIBS += -L../bin/MyDebug
}else{
DESTDIR = ../bin/MyRelease
LIBS += -L../bin/MyRelease
}

2.3.更改构建目录

在这里插入图片描述

3.创建dll子项目
3.1.注意事项
选择 其他项目 ------子目录项目
子项目添加到 project.pro(主项目目录下)
创建成功后,仍取消。
在这里插入图片描述
3.2 创建共享库(带界面) testDll.pro
在这里插入图片描述
在这里插入图片描述
3.3 共享库(带界面) testDll.pro 添加路径设置
在testDll.pro文件中添加如下代码

CONFIG(debug,debug|release){
DESTDIR += ../../bin/MyDebug
}else{
DESTDIR += ../../bin/MyRelease
}

3.4 引用dll 需在app.pro添加如下代码

INCLUDEPATH += ../dll/testDll
LIBS += -ltestDll

3.5 编译后,更改运行目录
在这里插入图片描述
3.6 添加新文件 testDll.ui文件
继承QDialog。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.7更改 testDll.h testDll.cpp文件
testDll.h如下:

#ifndef TESTDLL_H
#define TESTDLL_H

#include <QDialog>
#include "testdll_global.h"

namespace Ui {
class TestDll;
}

class TESTDLLSHARED_EXPORT TestDll : public QDialog
{
    Q_OBJECT
public:
    explicit TestDll(QWidget *parent = 0);
    ~TestDll();

    int GetTestdll();
    void SetTestFormShow();

private:
    Ui::TestDll *ui;
};

#endif // TESTDLL_H

testDll.cpp如下:

#include "testdll.h"
#include "ui_testDll.h"

TestDll::TestDll(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::TestDll)
{
    ui->setupUi(this);
}

TestDll::~TestDll()
{
    delete ui;
}

int TestDll::GetTestdll()
{
    return 30;
}

void TestDll::SetTestFormShow()
{
    this->show();
}

3.8 在主界面程序中直接引用即可

#include "app.h"
#include "ui_app.h"

#include "testdll.h"
#include <QDebug>

app::app(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::app)
{
    ui->setupUi(this);
}

app::~app()
{
    delete ui;
}

void app::on_pushButton_clicked()
{
    TestDll *pTestdll = new TestDll();
    qDebug() << pTestdll->GetTestdll();
    pTestdll->SetTestFormShow();
}

4.最终简易效果如下:
注:界面效果可自行随意设置

dll

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值