当前位置: 首页 > news >正文

石家庄做淘宝网站小蜜蜂采集wordpress

石家庄做淘宝网站,小蜜蜂采集wordpress,wordpress 数据库连接错误,自己做的网站怎么接入微信【CMake】添加静态库中的 Qt 资源 文章目录 可执行程序1. 创建资源文件(.qrc)2. 修改 CMakeLists.txt3. 使用资源文件 静态库1. 修改 CMakeLists.txt2. 使用资源2.1 初始化资源文件2.2 可执行程序中调用 这里介绍的不是使用 Qt 创建工程时默认的 CMakeLi…

【CMake】添加静态库中的 Qt 资源

文章目录

    • 可执行程序
      • 1. 创建资源文件(.qrc)
      • 2. 修改 CMakeLists.txt
      • 3. 使用资源文件
    • 静态库
      • 1. 修改 CMakeLists.txt
      • 2. 使用资源
        • 2.1 初始化资源文件
        • 2.2 可执行程序中调用

这里介绍的不是使用 Qt 创建工程时默认的 CMakeLists.txt,是使用 Visual Studio + Qt 的方式开发的 CMakeLists.txt,开发环境 VS2019 + Qt 5.12

可执行程序

1. 创建资源文件(.qrc)

首先,创建一个Qt资源文件(例如resources.qrc),并在其中列出你想要包含的资源文件。例如:

<RCC><qresource prefix="/"><file>images/logo.png</file><file>styles/style.qss</file></qresource>
</RCC>

示例目录结构

MyQtApp/
├── CMakeLists.txt
├── main.cpp
├── mainwindow.cpp
├── mainwindow.h
├── resources.qrc
└── resources/├── images/│   └── logo.png└── styles/└── style.qss

2. 修改 CMakeLists.txt

一般为可执行程序,即 App 应用,可以使用以下方式修改 CMakeLists.txt

cmake_minimum_required(VERSION 3.10)project(MyQtApp)
find_package(Qt5 COMPONENTS Widgets REQUIRED)# 添加资源文件
set(RESOURCE_FILES resources.qrc)
qt5_add_resources(QT_RESOURCES ${RESOURCE_FILES})# 添加源文件
set(SOURCE_FILES main.cpp mainwindow.cpp)# 添加头文件
set(HEADER_FILES mainwindow.h)# 添加可执行文件
add_executable(MyQtApp ${SOURCE_FILES} ${HEADER_FILES} ${QT_RESOURCES})# 链接Qt5库
target_link_libraries(MyQtApp Qt5::Widgets)

3. 使用资源文件

在 Qt 代码中,可以通过使用:/前缀来访问资源文件。例如:

#include <QApplication>
#include <QMainWindow>
#include <QLabel>
#include <QPixmap>
#include <QFile>
#include <QTextStream>int main(int argc, char *argv[])
{QApplication app(argc, argv);QMainWindow mainWindow;QLabel label(&mainWindow);// 加载图像资源QPixmap pixmap(":/images/logo.png");label.setPixmap(pixmap);// 加载样式表资源QFile file(":/styles/style.qss");if (file.open(QFile::ReadOnly | QFile::Text)) {QTextStream stream(&file);QString styleSheet = stream.readAll();app.setStyleSheet(styleSheet);}mainWindow.show();return app.exec();
}

静态库

通常在可执行文件拥有资源文件时,其他库使用 CMake 可能不生效

1. 修改 CMakeLists.txt

与可执行程序相同的方式创建 资源文件,此处不重复赘述。

# 添加资源文件
set(RESOURCE_FILES resources.qrc)
qt5_add_resources(QT_RESOURCES ${RESOURCE_FILES})set(SOURCE_FILES mylib.cpp
set(HEADER_FILES mylib.h)# 添加静态库
add_library(MyStaticLib STATIC ${SOURCE_FILES} ${HEADER_FILES} ${QT_RESOURCES})
# 链接Qt5库
target_link_libraries(MyStaticLib Qt5::Core)

目录结构示例:

MyStaticLib/
├── CMakeLists.txt
├── mylib.cpp
├── mylib.h
├── resources.qrc
└── resources/├── images/│   └── logo.png└── styles/└── style.qssMyQtApp/
├── CMakeLists.txt
└── main.cpp

2. 使用资源

使用资源文件的方式与可执行程序类似,使用 :/ 前缀来访问资源文件。可在静态库中使用资源文件,或主程序中使用资源文件。

若静态库中的资源未生效,则需要在可执行程序中手动初始化静态库中的资源文件。

2.1 初始化资源文件

在静态库源文件中定义初始化资源函数 ,使用 Q_INIT_RESOURCE 宏来初始化静态库的资源文件。

#include <QtCore/QResource>// 定义初始化资源的函数
void initMyStaticLibResources()
{Q_INIT_RESOURCE(resources);
}
2.2 可执行程序中调用
#include <QApplication>
#include <QMainWindow>
#include <QLabel>
#include <QPixmap>
#include <QFile>
#include <QTextStream>// 声明初始化资源的函数
extern void initMyStaticLibResources();int main(int argc, char *argv[])
{QApplication app(argc, argv);// 初始化静态库的资源文件initMyStaticLibResources();QMainWindow mainWindow;QLabel label(&mainWindow);// 加载图像资源QPixmap pixmap(":/images/logo.png");label.setPixmap(pixmap);// 加载样式表资源QFile file(":/styles/style.qss");if (file.open(QFile::ReadOnly | QFile::Text)) {QTextStream stream(&file);QString styleSheet = stream.readAll();app.setStyleSheet(styleSheet);}mainWindow.show();return app.exec();
}
http://www.yayakq.cn/news/18417/

相关文章:

  • 青海互动网站建设中国核工业第五建设有限公司官网
  • 大连企业网站排名优化信息流优化师面试常见问题
  • 私人做网站图片专门做店面装修设计的网站
  • 贪玩手游官方网站网站开发外包价格
  • 杭州网站建设哪家比较好制作手机网站什么软件下载
  • 扫描网站漏洞的软件百度优化点击软件
  • 比较专业的app定制开发湛江seo哪家好
  • 陕西交通建设集团西镇分公司网站网站开发工程师swot分析
  • 网站策划设计招聘网站建设项目资金申请报告
  • 课程注册 网站开发徐州做网站公司
  • 建个网站有收吕子乔做网站吹的语录
  • 胶南做网站海外产品网站建设
  • 网站静态生成目录 名称 建议天梭手表官方网站
  • 高质量营销型网站定做价格怎么开发软件app软件
  • 建设工程有限公司 网站创建网站基本步骤
  • 做警员编号网站phpmyadmin 备份 wordpress
  • 网站制作多少费用进入这个网站
  • 公司做网站要有服务器做外贸的网站都有哪些
  • 专业网站建设价格分析wordpress 留言本插件
  • 医药类网站前置审批zion小程序开发
  • 中山网站建设价格低男人都懂的填空题2023
  • 南山做网站公司门户网站建设工作管理办法
  • 如何在网盘上做网站sendcloud wordpress
  • 网站评论怎么做淮安网站建设推广
  • 做企业网站有什么工作内容40个界面ui外包多少钱
  • 网站建设用什么写沈阳专业seo关键词优化
  • 两栏式设计网站江西企业网站定制
  • 多样化的网站建设公司北京网络报警平台官网
  • 宁波网站设计企业网站界面设计材料收集
  • 品牌策划公司网站做商城网站哪里