• <td id="ae6ms"><li id="ae6ms"></li></td>
  • <xmp id="ae6ms"><td id="ae6ms"></td><table id="ae6ms"></table>
  • <table id="ae6ms"></table>
  • <td id="ae6ms"></td>
    <td id="ae6ms"></td>
  • <table id="ae6ms"></table><table id="ae6ms"><td id="ae6ms"></td></table>
  • <td id="ae6ms"></td>
  • <table id="ae6ms"><li id="ae6ms"></li></table>
  • <table id="ae6ms"></table>
    西西軟件園多重安全檢測下載網站、值得信賴的軟件下載站!
    西西首頁 常用軟件 軟件下載 安卓軟件 游戲下載 安卓游戲 MAC應用 驅動下載 安卓電視
    系統工具網絡工具媒體工具圖形圖像聊天工具應用軟件編程開發手機軟件安卓應用電腦安全字體素材

    wxwidgets

    3.0.1 官方最新版
    • wxwidgets3.0.1 官方最新版
    • 軟件大小:46.0M
    • 更新時間:2014-07-17 14:44
    • 軟件語言:中文
    • 軟件廠商:
    • 軟件類別:國產軟件 / 免費軟件 / 編程工具
    • 軟件等級:4級
    • 應用平臺:WinAll, Win7
    • 官方網站:http://www.pirinnaturalssoapandspa.com
    好評:50%
    壞評:50%

    裝機必備軟件

    軟件介紹

    wxWidgets是一個開源的跨平臺的C++構架庫(framework),它可以提供GUI(圖形用戶界面)和其它工具。目前的2.x版本支持所有版本的Windows、帶GTK+或Motif的Unix和MacOS。一個支持OS/2的版本正在開發中。

    wxWidgets 工具包提供圖形用戶界面(GUI)開發所需的一些功能強大的跨平臺工具。除了原生的 C++, 還有其他幾種語言提供了使用該工具包所需的包裝程序。本文將介紹如何使用 wxWidgets 工具包來在所選用的編程語言中創建用途廣泛的 GUI。

    wxWidgets的一些基礎知識:

    1、wxWidgets不僅僅使用C++,而且能夠使用python、perl、java、lua、eiffel、C#(.NET)、basic、ruby,甚至是javascript(見General Information)(豆子:有些語言連聽都沒聽說過,呵呵);

    2、wxWidgets是一個完整的GUI工具庫,提供了很多工具類;

    3、有很多文檔(雖然一些只是文檔片段);

    4、免費供個人使用或者商業使用;

    5、只要可能,wxWidgets就會使用本地平臺的SDK。也就是說,同一段代碼,在Windows下編譯將具有Windows程序的外觀,在Linux下編譯將具有Linux程序的外觀;

    6、 這樣做的優點是,wxWidgets程序看上去和本地程序差不多,有時也會有一些本地組件的行為——例如在OS X上所有的文本域(text area)都將獲得內建的拼寫檢查的能力;

    7、 這樣做的缺點是,wxWidgets程序在不同平臺的行為可能會不一致;那些使用輕量級組件的GUI庫或許會丟失一些特定平臺的特性,但會將平臺相關的代碼減到最少(因此,這樣做也能夠將不同平臺組件的行為差異降到最小,并且減少了特定平臺的bugs)。另外,由于使用本地感官風格,使得wxWidgets不適合于那些希望具有不同于系統界面風格的程序的開發。

    wxwidgets和其他一些主流庫的比較

    wxwidgets vs MFC:這兩風格很像,在源代碼中用了很多的宏定義,誰模仿誰我就不去關心了,反正對于MFC比較熟悉的人應該對wxwidgets感覺不錯。MFC中大量運用虛函數,而wxwidgets中大量用重載,理論上說wxwidgets的運行效率要比MFC高一些。MFC只能支持windows這種硬傷很難應用到linux下面。

    wxwidgets vs QT:在linux學習圖形界面開發的時候我也猶豫著是否學習QT,最后還是選擇了wxwidgets,這主要是公司這么選擇,我要是非得搞QT就變成一個人搞了,那多沒意思。QT的優點也比較多:

    1. 支持的平臺最多
    2. 商業化支持
    3. 完整的文檔和RAD工具
    4. 最為面向對象
    5. 世界上最為成功的手機廠商支撐,對于移動終端的支持最為完善

    Qt的缺點:
    1. 使用的是非標準C++
    2. 每個平臺不是"Native GUI"
    3. 過于龐大且運行緩慢
    4. 與其它庫不是很兼容(主要是STL之類的兼容問題)
    5. 基本只能使用特定的qmake工具(其它工具經過良好的修改也可以,不過相當于重新編寫一個qmake,是否值得)

    6.許可協議的話是做掙錢的程序的話是需要付費的,這一條很不爽。

    另外linux下面的GTK也是跨平臺的,但是它是C語言的封裝,使用起來不是方便,基于以上原因我選擇了wxwidgets,盡管它有以下明顯的缺陷:

    1. 由于是偏MFC,則面向對象封裝做得不是非常好
    2. 相對缺乏的文檔、資源。資源方面是相當的匱乏,從google上搜索基本就能看出使用這個庫的人是相當少啊,學習難度相對來說也大一些。
    3. 缺乏很好的商業化支持,如果商業軟件出問題需要支持,稍微麻煩點

    優勢

    那么wxwidgets有什么特別之處呢?比起其他的跨平臺gui庫,有什么好處呢?

    1、(不得不放在第一位的)就是他無論對于個人還是對于商業應用都是免費的!

    ——它的主體框架的授權協議支持商業免費應用,其外圍功能庫中很多也是lgpl授權的,這無疑對于我等“0資本”的人來說是天大的好事。不同于Qt之類的跨平臺gui庫。

    2、 他是跨平臺的gui庫,支持的操作系統很全面,甚至支持pda(說不定過一段時間他都能夠支持symbian了)(最新版本【3.0.1】支持iOS,可以在下載的源碼包中找到wxWidgets-3.0.1.tar.bz2\wxWidgets-3.0.1\build\osx

    \wxiphone.xcodeproj)。

    —— 此跨平臺非彼跨平臺,它雖然不像java那樣是“全面”的,而僅僅是gui庫,但是gui是計算機編程中,最為麻煩、耗費時間、容易出現bug的部分,特別當你想要自己的軟件運行在多個操作系統上的時候,開發和維護的難度讓人難

    以想象。其實c++也是支持“跨平臺”的,因為c++可以在任何平臺上編譯運行,之所以沒幾個人說他是跨平臺的,主要問題就出在變量長度和各操作系統的gui(這里的“界面”我指得是很廣義的)上,如果解決了gui的問題,基本上就

    解決了c++的“跨平臺”問題——至少不用為每種平臺都維護一份源代碼了。

    3、 wxwidgets提供的gui是大量使用宏的,這就意味著它是在盡可能的使用目標系統native的gui樣式。

    ——你可以訪問wxwidgets網站,看看那些開發的軟件的截圖,全是系統native級別的。如果你開發了一個xp系統的軟件的話,你的軟件會仍然以“xp專有的‘小賤人’級別”的面貌展現在你面前。

    4、 它支持的編譯器也很多,而且borland也曾聲明將在c++builderx2里邊提供對wxidgets的支持——預覽版都出來了。

    ——其實我就是看到borland在c++不景氣的時候,這么看重這個東東,甚至用它來做“王牌”,才開始注意到他的。當然,反過來,也正是borland的支持,才使他活力大發的。

    5、 自然,有牛X支持,而且是開源的,wxwidgets一直都在快速穩健的開發中,其周邊工具也越來越多。

    —— 隨著MS開始全力支持他的.net,c++成了“沒落”的語言,但是不可否認,c++還是有很多用武之地的,所以根本不可能真正沒落。沒有了超牛X的支持,地球人自然開始尋求新的發展方式,wxwidgets這種開源免費,且允許商業應用的好東東,自然會被人們所重視。

    軟件標簽: wxwidgets

    軟件截圖

    wxwidgets 3.0.1 官方最新版

      其他版本下載

      熱門評論

      最新評論

      第 1 樓 廣東佛山順德聯通 網友 客人 發表于: 2015/3/26 17:38:46
      good

      支持( 0 ) 蓋樓(回復)

      發表評論 查看所有評論(1)

      昵稱:
      表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
      字數: 0/500 (您的評論需要經過審核才能顯示)

      下載幫助下載幫助西西破解版軟件均來自互聯網, 如有侵犯您的版權, 請與我們聯系。

      TOP
      軟件下載
      女人让男人桶30分钟免费视频,女人张开腿让男人桶个爽,一进一出又大又粗爽视频
    • <td id="ae6ms"><li id="ae6ms"></li></td>
    • <xmp id="ae6ms"><td id="ae6ms"></td><table id="ae6ms"></table>
    • <table id="ae6ms"></table>
    • <td id="ae6ms"></td>
      <td id="ae6ms"></td>
    • <table id="ae6ms"></table><table id="ae6ms"><td id="ae6ms"></td></table>
    • <td id="ae6ms"></td>
    • <table id="ae6ms"><li id="ae6ms"></li></table>
    • <table id="ae6ms"></table>