2014-02-13 64 views
1

我對使用wxWidgets的開發者有個疑問。wxWidgets 3.0 - 新功能和新功能,補充和替代已棄用的功能

我剛開始學習wxWidgets 3.0,沒有任何使用GUI編程的經驗。經過一番搜索和詢問後,我發現最新版本包含許多新的非常有用的功能和功能,其中一些替代了棄用的功能和功能。最經常提到的新函數是Bind(),它取代了Connect()和事件表。

我跟隨this tutorialthis tutorial,以及一些簡單的樣品從library documentation。由於這些教程和示例大多來自以前的版本,因此它們大多不包含wxWidgets 3.0中的最新更改/添加。

我想知道...在wxWidgets 3.0中引入的最突出的新功能和特性是什麼?wxWidgets的新手應該肯定會了解哪些?謝謝。

+0

您是否閱讀過[this](http://docs.wxwidgets.org/3.0.0/overview_changes_since28.html)和[this](http://sourceforge.net/projects/wxwindows/files/3.0.0) /changes.txt/download)? –

+0

@KristianDuske - 嗨,是的,我已經閱讀過他們,謝謝你的評論。我相信你可以想象,無論變更日誌有多完整,對新手來說都沒有什麼啓發意義,與一些曾經使用過很多以前版本的庫的人相比較=) –

回答

4

你已經發現了關於Bind()這是很重要的,因爲你應該用舊的例子或教程代替Connect()的任何外觀 - 也認真考慮用它替換靜態事件表。

另一件事,從這個角度來看重要的是Unicode的變化:許多前3.0職位和示例使用wxT()(或_T(),這是完全一樣的東西),但它不能與wxWidgets的3.0需要在所有。你還應該忽略任何有關Unicode與ANSI構建的討論,因爲只有一個構建的wxWidgets 3.0,與以前版本的Unicode和ANSI構建兼容。

在3.0中沒有新的東西,但似乎並不廣爲人知的是wxSizerFlags,它使得使用sizer的代碼更具可讀性。你仍然需要了解sizer是如何工作的(這並沒有改變),你仍然可以選擇使用XRC而不是用C++編寫這個代碼(這不是新的)。

除此之外,3.0中還有很多附加功能(例如網絡視圖,功能區和屬性網格庫),但沒有其他重要的重大更改。

+0

謝謝你的出色答案,這正是我正在尋找的。如果您想到任何其他值得一提的新增功能,我想請您進一步擴展您的答案。或者推薦替代大多數教程/示例中使用的方法。 –