c++ duiLib環境集成

duiLib的Github鏈接:https://github.com/duilib/duilib

使用vcpkg快速安裝duilib以及配置。步驟如下:

1、用git下載vcpkg,下載報錯,這個錯誤通常表明在Git克隆過程中,與GitHub服務器的SSL連接被意外重置。用http下載成功。

2、執行bootstrap-vcpkg.sh

3、執行vcpkg integrate install

4、執行vcpkg install duilib

查看已安裝的包列表,檢查duiLib在其中:

5、包含頭文件路徑

項目屬性,c/c++ , 附加包含目錄中添加vcpkg的DuiLib頭文件路徑

添加的就是上圖該路徑。

6、配置庫文件。這里是動態鏈接示例(如果是靜態鏈接,附加依賴項添加duilib_static.lib,并在預處理器定義中添加UILIB_STATIC

1)項目配置選所有配置,平臺選win32或X64

2)?配置屬性 → VC++ 目錄 → 庫目錄?編輯

3)粘貼庫文件路徑。

我的是這個路徑:

4)附加依賴項(添加.lib文件名)

動態鏈接,輸入duilib.lib ,如下:

5)動態鏈接需復制DLL文件

將?duilib.dll(位于?vcpkg_root\packages\duilib_x86-windows\bin)復制到項目的輸出目錄(如?Debug\?或?Release\)

即將上面這個DLL文件復制到下面:?

7、測試環境是否配置好。代碼如下:

#include <iostream>
#include <algorithm>
#include <unordered_set>
#include <unordered_map>
#include <map>
#include <string>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <thread>
#include <atomic>
#include <mutex>
#include <condition_variable>
#include <functional>
#include <queue>
#include <sstream>
#include <exception>
#include <format>
#include <stack>#include <duilib/UIlib.h>using namespace DuiLib;class TestWindow : public CWindowWnd, public INotifyUI {
public:LPCTSTR GetWindowClassName() const override {return _T("TestWindowClass");}UINT GetClassStyle() const override {return CS_DBLCLKS;}void OnFinalMessage(HWND hWnd) override {delete this;}void Notify(TNotifyUI& msg) override {}LRESULT HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam) override {if (uMsg == WM_CLOSE) {PostQuitMessage(0);return 0;}return __super::HandleMessage(uMsg, wParam, lParam);}
};int main() {// 創建窗口TestWindow wnd;wnd.Create(nullptr, _T("Test"), UI_WNDSTYLE_FRAME, 0, 0, 500, 400);wnd.ShowModal();
}

運行結果:

可以看到一個標題為Test的窗口。ok.

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/87566.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/87566.shtml
英文地址,請注明出處:http://en.pswp.cn/web/87566.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

一項基于粒子圖像測速PIV系統的泥石流模擬沖擊實驗

1實驗背景 全國進入“七下八上”防汛關鍵期&#xff0c;泥石流作為山區常見地質災害&#xff0c;突發性強&#xff0c;破壞力大&#xff0c;對人民群眾生命財產安全造成威脅&#xff0c;傳統觀測手段難以實現對碎石運動軌跡與水流場耦合效應的精細觀測。而粒子圖像測速PIV技術…

ADAS功能介紹

ADAS功能介紹 ADAS&#xff08;Advanced Driving Assistance System&#xff09;高級駕駛輔助系統&#xff0c;可分為如下幾大類功能。 IA&#xff08;Information Assist&#xff09;信息輔助類 IA類功能&#xff0c;均不包含駕駛行為的控制。這些功能又可以進一步細分為三…

【LUT技術專題】CLUT代碼講解

本文是對CLUT技術的代碼講解&#xff0c;原文解讀請看CLUT文章講解。 1、原文概要 CLUT利用矩陣在保持3DLUT映射能力的前提下顯著降低了參數量。整體流程如下所示。 整體還是基于3D-LUT的框架&#xff0c;只不過添加了一個壓縮自適應的變換矩陣。作者使用的損失函數在3DLUT的…

在LinuxMint 22.1(Ubuntu24.04)上安裝使用同花順遠航版

剛剛在LinuxMint 22.1(Ubuntu24.04)安裝完成同花順遠航版&#xff0c;體驗特別好&#xff0c;忍不住要及時給深受Linux平臺無好用行情軟件之苦的朋友們進行分享了。在此之前我一直只能用同花順Linux原生版的行情軟件&#xff0c;但是該軟件只有很基本的行情功能&#xff0c;而且…

解決vue3路由配合Transition時跳轉導致頁面不渲染的問題

問題復現 <router-view v-slot"{ Component, route }"><transition name"fade" mode"out-in"><keep-alive><component :is"Component" :key"route.path" /></keep-alive></transition>…

java: 無法訪問org.springframework.boot.SpringApplication,類文件具有錯誤的版本 61.0, 應為 52.0

問題 java: 無法訪問org.springframework.boot.SpringApplication 錯誤的類文件: /D:/.m2/repository/org/springframework/boot/spring-boot/3.3.13/spring-boot-3.3.13.jar!/org/springframework/boot/SpringApplication.class 類文件具有錯誤的版本 61.0, 應為 52.0 請刪除…

Docker拉取nacos鏡像

以下是使用 Docker 拉取并運行 Nacos&#xff08;阿里巴巴開源的配置中心和服務發現組件&#xff09;鏡像的詳細指南&#xff1a; 1. 拉取 Nacos 官方鏡像 拉取最新版 Nacos 鏡像&#xff08;推薦指定版本以避免兼容性問題&#xff09;&#xff1a; # 拉取最新版本&#xff…

【CTF-Web環境搭建】kali

Kali虛擬機下載 這里在官網上下載下kali虛擬機Get Kali | Kali Linux 網速比較慢的話打開一下加速器 下載完成后 得到一個壓縮包 選擇一個合適的地方將這個壓縮包解壓一下 記住這個文件目錄 這里為了后續方便 簡歷一個叫做Virtual Machines的文件夾 里面就可以放不同的虛擬機…

微服務架構的演進:邁向云原生

微服務架構的演進&#xff1a;邁向云原生ps:最近在學習的時候&#xff0c;發現好多技術方案最終都有云原生的影子&#xff0c;這里淺談一下云原生的發展趨勢隨著互聯網技術的發展&#xff0c;軟件開發模式經歷了從單體應用到微服務架構的重大轉變。而在今天&#xff0c;微服務架…

服務器如何配置防火墻規則開放/關閉端口?

配置服務器防火墻規則&#xff08;開放/關閉端口&#xff09;是服務器安全管理的基礎操作&#xff0c;不同操作系統和防火墻工具的配置方式有所不同。以下是主流系統的詳細操作指南&#xff1a;一、Linux系統&#xff08;iptables/firewalld/UFW&#xff09;1. iptables&#x…

基于SpringBoot+Redis實現外呼頻次限制功能

針對外呼場景中的號碼頻次限制需求&#xff08;如每3天只能呼出1000通電話&#xff09;&#xff0c;我可以提供一個基于Spring Boot和Redis的完整解決方案。 方案設計 核心思路 使用Redis的計數器過期時間機制 采用滑動窗口算法實現精確控制 通過Lua腳本保證原子性操作 實…

下一代 2D 圖像設計工具「GitHub 熱點速覽」

長期以來&#xff0c;2D 設計領域似乎已是 Adobe 與 Figma 的天下&#xff0c;層疊的圖層、熟悉的工具欄&#xff0c;一切都顯得那么順理成章&#xff0c;卻也讓不少設計師在創意的邊界上感到了些許乏力。當我們以為設計工具的革新只能是小修小補時&#xff0c;開源社區再次扮演…

L58.【LeetCode題解】模擬算法習題集1(Z 字形變換、外觀數列)

目錄 1.Z 字形變換 方法1: 模擬 代碼 提交結果 方法2:優化后的模擬 代碼 提交結果 2.外觀數列 方法1:模擬 代碼 提交結果 方法2:打表 知識回顧 代碼 1.Z 字形變換 https://leetcode.cn/problems/zigzag-conversion/ 將一個給定字符串 s 根據給定的行數 numRows &…

Flink MySQL CDC 環境配置與驗證

一、MySQL 服務器配置詳解 1. 啟用二進制日志&#xff08;Binlog&#xff09; MySQL CDC 依賴二進制日志獲取增量數據&#xff0c;需在 MySQL 配置文件&#xff08;my.cnf 或 my.ini&#xff09;中添加以下配置&#xff1a; # 啟用二進制日志 log-binmysql-bin # 二進制日志…

如何查看自己電腦的CUDA版本?

在搜索欄輸入命令提示符 打開 輸入 nvidia-smi圖片中的兩個是CUDA版本和顯卡的信息

opencv使用 GStreamer 硬解碼和 CUDA 加速的方案

在Conda環境中從源代碼編譯OpenCV&#xff08;支持CUDA和GStreamer&#xff09; 以下是完整的方案步驟&#xff0c;包括必要的依賴庫安裝過程&#xff1a; 1. 安裝Miniconda&#xff08;如果尚未安裝&#xff09; # 下載Miniconda安裝腳本 wget https://repo.anaconda.com/m…

Java面試寶典:多線程一

1. run() vs start() 陷阱題 下面程序的運行結果 public static void main(String[] args) {Thread t = new Thread(

【CSS-14-基礎樣式表Base.css】如何編寫高質量的Base.css:前端樣式重置與基礎規范指南

在前端開發中&#xff0c;Base.css&#xff08;也稱為重置樣式表或基礎樣式表&#xff09;是整個項目樣式的基石。它負責消除瀏覽器默認樣式的差異&#xff0c;建立統一的樣式基準&#xff0c;為后續開發提供一致的起點。一個精心設計的Base.css能夠顯著提高開發效率&#xff0…

探索Python數據科學工具鏈NumPyPandas與Scikit-learn

NumPy&#xff1a;數值計算的基石 NumPy是Python中用于科學計算的核心庫&#xff0c;它提供了一個強大的N維數組對象&#xff0c;以及大量的數學函數庫&#xff0c;能夠高效地進行向量和矩陣運算。對于數據科學家而言&#xff0c;掌握NumPy是進行數據處理和算法實現的基礎。 創…

八股學習(三)---MySQL

一、MySQL中的回表是什么&#xff1f;我的回答&#xff1a;MySQL回表指的是在查詢使用非聚簇索引也就是二級索引時&#xff0c;葉子節點只存儲了索引列的值和主鍵Id&#xff0c;若要查詢其他字段&#xff0c;就要根據主鍵去聚簇索引查詢完整的數據。這個過程就是回表。比如用na…