简单UI和DLL

简单UI设计

想要阴影,就必须保证 margin 不为0,所以在不是最大化的时候我们需要 margin,但是最大化的时候我们不需要 margin!

动态链接库的使用

新建工程,产出动态链接库使用!

#ifndef LIBTEST_H
#define LIBTEST_H

#include <QtGlobal>
// Q_DECL_EXPORT  导出类
class Q_DECL_EXPORT LibTest
{

public:
    LibTest();
};
extern "C" Q_DECL_EXPORT void testFunction();
#endif // LIBTEST_H
#include "libtest.h"
#include <QDebug>
LibTest::LibTest()
{
}

void testFunction()
{
    qDebug() << "testFunction";
}

#-------------------------------------------------
#
# Project created by QtCreator 2021-03-27T22:59:25
#
#-------------------------------------------------

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = QT_actual_1
TEMPLATE = app

#加入lib文件
#-L 表示目录,-l 表示库的名字,会自动寻找 lib + 库名 + .a 的文件
LIBS += -L. -llibTest

# The following define makes your compiler emit warnings if you use
# any feature of Qt which has been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0

CONFIG += c++11

SOURCES += \
        main.cpp \
        widget.cpp

HEADERS += \
        widget.h

FORMS += \
        widget.ui

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

DLL使用成功!

猜你喜欢

转载自blog.csdn.net/qq_42306471/article/details/115278750