C++開發(fā),這些GUI庫一定不要錯過!
:
如果問Python這類集成度非常高的編程語言GUI開發(fā)用什么庫,可以列舉出很多不錯的第三方庫。
但是,如果這個問題放在C++這種基礎的編程語言上,很多同學估計一時間都無從下手。
得益于強大的GitHub,我們想要的很多東西在這上面基本都可以找到對應的開源項目。
因此,這些年我就養(yǎng)成了一個每天花一到兩個小時瀏覽GitHub的習慣,這個過程中發(fā)掘到很多寶藏項目,為了幫助到更多同學,我每周都會整理分享出來,感興趣的可以看一下最近一期的分享:
Python開發(fā)者神器!這款搜索引擎比谷歌好用多了8 贊同 · 0 評論文章
回到問題本身,C++ GUI開發(fā)應該用什么庫?
看過這么多項目,GUI開發(fā)這么重要的一個方向自然不會缺少,今天就來給大家分享幾個非常不錯的C++ GUI開發(fā)方面非常不錯的庫!
1.
Star:43.8k
ImGui是一款輕量化、無依賴、功能強大的C++ GUI庫,它具有快速、可移植、無依賴等亮點。
ImGui 的目標是實現(xiàn)快速迭代并使開發(fā)者能夠創(chuàng)建工具和應用。它特別適合集成到游戲引擎、實時 3D 應用程序、全屏應用程序、嵌入式應用程序或操作系統(tǒng)功能非標準的控制臺平臺上的任何應用程序中。
簡單概括,它具有如下特點:
最小化狀態(tài)同步
最小化用戶端的狀態(tài)存儲
最大限度地減少設置和維護
易于使用來創(chuàng)建反映動態(tài)數據集的動態(tài) UI
易于使用來創(chuàng)建代碼驅動和數據驅動的工具
易于使用來創(chuàng)建臨時的短命工具和長命的、更精細的工具
便攜、最小化依賴、可移植
性能高和低內存消耗
2.
Star:1.1k

NanoGUI 是用于 OpenGL 3+、GLES 2/3 和 Metal 的極簡跨平臺工具庫。
基于NanoVG,它支持自動生成布局、有狀態(tài)的 C++ lambdas 回調,內含很多高效的小部件類型和支持 Retina 的 Apple 設備渲染。
NanoGUI 目前適用于 Mac OS X (Clang)、Linux(GCC 或 Clang)、FreeBSD (Clang) 和 Windows(Visual Studio ≥ 2017)。
另外,需要說明,它需要最新的 C++17 編譯器。
3.
Star:1.5k

RmlUi 是基于 HTML 和 CSS 標準的 C++ GUI庫,目標是為任何項目的界面需求提供完整的解決方案。 它是 libRocket 項目的一個分支,引入了新功能、修復了錯誤并改進了性能。
RmlUi 一個輕量級和高性能的庫,擁有自己的布局引擎和很少的外部依賴。 從本質上講,RmlUi 獲取您的 HTML/CSS 類源文件并將它們轉換為頂點、索引和繪制命令,然后使用自己的渲染器來繪制它們。
特點:
跨平臺:Windows、macOS、Linux、iOS等。
動態(tài)布局
完整的動畫和轉換支持
高效的應用程序范圍樣式,帶有定制的模板引擎
功能齊全的控件集:按鈕、滑塊、下拉菜單等
4.
Star:2.4k

Elements是一個輕量級的、細粒度的、獨立的、模塊化的GUI庫。
它可以在任何應用程序中使用,并且可以與其他GUI庫和框架很好地配合。
另外,它使用起來非常簡單,開箱就容易使用,并有大量的例子。
移植到一個新的主機目標也非常簡單,只需要移植幾個文件。
5.
Star:3.9k

FTXUI是一款用于終端下用戶界面開發(fā)的C++工具庫。
功能風格方面受React啟發(fā),愈發(fā)非常簡單,支持動畫、繪畫,而且無依賴、跨平臺(Linux、macOS、WebAssembly、Windows)。
6.
Star:16.7k
cocos2d-x是一個多平臺框架,用于構建2D游戲、交互式界面及其他圖形應用程序。
它基于cocos2d-iphone,但沒有使用Objective-C,而是使用C++。它可以在iOS、Android、macOS、Windows和Linux上運行。
cocos2d-x框架結構:

cocos2d-x在功能方面可以說是非常全面,動作、效果、菜單、按鈕、引擎、場景管理、動畫、字體、響應鍵盤/鼠標、聲音引擎等方面都有很完善的支持。
建議大家有空可以多瀏覽Github,有很多好用的開源免費工具。但是,目前Github上項目多如牛毛,而且刷榜現(xiàn)在也非常嚴重,想要找到優(yōu)質的項目變得越來越難。這里,給大家推薦Github上一個非常不錯的項目《DevWeekly》,這個項目每周都會精挑細選一些優(yōu)質的開源項目,涵蓋C++、JAVA、JavaScript、Python、Go等不同編程語言。此外,還有一些開源工具、優(yōu)秀的技術文章,建議大家看一下:
hello,大家好,我是Jackpop,重點大學本科畢業(yè)后保送到哈工大計算數學專業(yè)讀研,有多年國內頭部互聯(lián)網、IT公司工作經驗,先后從事過計算機視覺、推薦系統(tǒng)、后端、數據等相關工作。如果同學們在升學考研、職業(yè)規(guī)劃、高考志愿、簡歷優(yōu)化、技術學習