如果從實用的角度來說,最好是選擇一個跨平臺的套件,而不要分別在各個平臺上挑選一款不同的。這樣做的好處是“一次編寫,到處執行”,其中所節省的人力物力是不可估量的。另外,也可以保證各個平臺上呈現出來的效果最大限度的統一(注意,並不是完全相同)。
在這裡,Qt是一個不錯的選擇。目前,Qt已經進化到了Qt 5.10,並且將焦點聚集在 QML 開發上。這對程式設計師構建跨平臺的 GUI 應用無疑是一大福音。
相比傳統的 Qt Widgets 程式設計,QML 開發效果更高,自由度更大,也能夠更加優美地實現介面與邏輯的分離。舉個例子來說吧。以前我用 Windows API 開發一款軟體時,在繪製介面時常常會有很多限制。比如說,要想自己實現諸如 Office 2016 的扁平化選單,那是非常困難的。它佈局選單的方式有點類似於選項卡,而選項頁內又可容納各種不同的元件,不像以前那種傳統的彈出式選單(聯想一下 Word 2003)。
但是,後來我轉用 Qt 開發以後,這個問題實現起來就容易多了。下圖是我仿照Word 2016 介面寫的一款記事本,視窗邊緣的陰影和選項卡選單都可以完美實現:
另外,要想新增點自己的特色也是很方便實現的,比如換膚:
幾乎可以這麼說,只要你想得到,Qt可以開發出任何樣式的你想要的介面出來,並且可以很方便地實現各種特效。此外,如果想在其他平臺執行,重新編譯一次即可,也不需要更改什麼程式碼。
如果從實用的角度來說,最好是選擇一個跨平臺的套件,而不要分別在各個平臺上挑選一款不同的。這樣做的好處是“一次編寫,到處執行”,其中所節省的人力物力是不可估量的。另外,也可以保證各個平臺上呈現出來的效果最大限度的統一(注意,並不是完全相同)。
在這裡,Qt是一個不錯的選擇。目前,Qt已經進化到了Qt 5.10,並且將焦點聚集在 QML 開發上。這對程式設計師構建跨平臺的 GUI 應用無疑是一大福音。
相比傳統的 Qt Widgets 程式設計,QML 開發效果更高,自由度更大,也能夠更加優美地實現介面與邏輯的分離。舉個例子來說吧。以前我用 Windows API 開發一款軟體時,在繪製介面時常常會有很多限制。比如說,要想自己實現諸如 Office 2016 的扁平化選單,那是非常困難的。它佈局選單的方式有點類似於選項卡,而選項頁內又可容納各種不同的元件,不像以前那種傳統的彈出式選單(聯想一下 Word 2003)。
但是,後來我轉用 Qt 開發以後,這個問題實現起來就容易多了。下圖是我仿照Word 2016 介面寫的一款記事本,視窗邊緣的陰影和選項卡選單都可以完美實現:
另外,要想新增點自己的特色也是很方便實現的,比如換膚:
幾乎可以這麼說,只要你想得到,Qt可以開發出任何樣式的你想要的介面出來,並且可以很方便地實現各種特效。此外,如果想在其他平臺執行,重新編譯一次即可,也不需要更改什麼程式碼。