1. 程式人生 > >8個免費實用的C++GUI庫

8個免費實用的C++GUI庫

C++標準中並沒有包含GUI,這也使得C++開發圖形化介面需要依賴於第三方的庫。實際上,圖形介面恰恰是C++的強項,小到平常使用的各類桌面軟體,大到魔獸世界這樣的遊戲,都是C++擅長的地方。C++之所以能做到這一點,原因在於它是一門即能提供極高的效能,又能提供良好介面的語言。C效能很高,但是封裝太差;Java封裝很好,但效能不適合做介面開發,更別談大型遊戲。C++的GUI庫除了最為人所熟知的MFC,其實還有其它很多,這篇文章列舉了8個免費且實用的C++ GUI庫。

C++是一種多正規化,遵循自由的形式,並且通用的一門強大的程式語言,這門語言被視為是中間層次的語言,之所以這樣認為,是因為它擁有高層語言和底層語言的一些特性。

C++之所以成為最流行的語言之一是有許多原因的,它的應用範圍包括系統軟體,裝置驅動,應用程式軟體和許多其他包含客戶端程式和娛樂的軟體,最好的一個例子是視訊遊戲。

GUI是圖形使用者介面(Graphical User Interface)的縮寫,這被定義成使用者介面的型別,執行使用者直接和電子裝置互動而不是通過命令列的形式,這個軟體不僅能用在計算機而且還能用在最新的手持裝置,例如遊戲裝置或多種形式的音樂播放器。

今天我們要跟開發者分享C++的GUI庫,希望這些庫能夠幫助開發者,在他們的下一個專案中能夠讓他們的應用程式擁有讓人印象深刻和吸引力的佈局。訪問下面的目錄,並且在留言板中分享你的想法。

1)Qt

Qt是一種跨平臺的應用程式和UI框架

它包括一種跨平臺的類庫,整合開發工具和跨平臺的IDE,使用Qt,你可以編寫基於Web的應用程式,並且通過許多的桌面和應用程式來部署它們,而無需重寫程式碼。

2)Fltk

FLTK(發音“Fulltick”)是UNIX/Linux(X11),Microsoft Windows和MacosX上一套跨平臺的C++ GUI工具包。FLTK提供現代圖形使用者介面的功能而沒有膨脹(諤諤...這個地方蛋疼了,路過的知道的說一下,原話:FLTK provides modern GUI functionality without the bloat),並且支援3D圖形,依靠OpenGL和它內建的GLUT模擬。FLTK被設計成小巧和模組化足以實現靜態連結,但作為一個共享庫其做工很精細。FLTK也包括一個傑出的UI生成器,叫做FLUID,它能夠在秒內建立應用程式。

FOX 是一套基於C++的工具包,能夠很容易並且高效地開發圖形使用者介面,它提供了一個廣泛的,而且越來越多,整合的控制並提供最先進的裝置狀態,例如拖放選擇,和OpenGL為了3D圖形操作的小工具。FOX也實現了圖示,影象和方便使用者的特性,例如狀態行幫助和工具提示,工具提示甚至可以用到3D物件。

 

GPE Phone版本(G(PE^2))的目的是為移動的Linux裝置開發一個基於GTK/GPE的軟體棧,特別是行動電話,關於這個軟體更多的細節,還有怎麼找到它,請看我們的任務陳述:

5)Lgi

LGI是一個GUI框架,能夠抽象提取出全部作業系統的相關性,你可以產生可移植性的程式碼,它能夠處理全部的圖形介面函式,執行緒和訊號,網路連線,還有許多的bit位,並且分片來幫助小的,快速的和可依靠的應用程式。

wxWidgets是一個C++庫,主要是讓開發者為Windows,OS X,Linux和UNIX在32-bit和64-bit的體系下開發應用程式,同時也為移動的平臺包括像Windows Mobile,iPhone SDK和嵌入式的GTK+。

U ++是一個C ++跨平臺的快速應用程式開發框架專注程式設計師生產力。它包括一套庫(GUI,SQL,etc...),還有一套整合的開發環境。

ZooLib允許從一個單一的程式碼庫為各種平臺和處理器構建本地應用程式,對於特定平臺的源的需求不是很大,在極少數情況不可移植的程式碼變得必要,包括通過條件編譯內聯使用提供的預處理符號之一簡單容易的事情。