aswing

aswing

AsWing是一套UI組件框架,純ActionScript開發的組件框架(有ActionScript2和ActionScript3版本),也包含一些常用的工具類,目的是讓Flash/Flex開發人員方便的開發出想要的應用程式界面。

AsWing是什麼

AsWing是一套UI組件框架,純ActionScript開發的組件框架(有ActionScript2和ActionScript3版本),也包含一些常用的工具類,目的是讓Flash/Flex開發人員方便的開發出想要的應用程式界面。由於ActionScript2的時代已經慢慢過去,這裡我們只針對ActionScript3版本來介紹。

為什麼選擇AsWing

自從Flex2,A.I.R發布以來,由於其開發效率高、表現能力強等特點,採用Flash/Flex平台開發應用程式的需求越來越多,同時,RIA的興起,這些需要一套成熟的UI組件框架。

AsWing早在ActionScript2時代就已經發展成熟並成功套用於多個大型商業案例。它是成熟的JavaSwing框架的MVC架構在ActionScript上的輕量級實現,並且根據ActionScript語言的特性、Flash顯示元件的特性對架構的細節進行了調整,集Swing框架和嚴謹和ActionScript的靈活於一體,脫胎於Swing但是優於Swing。其最新的ActionScript3.0版本更是經過改進設計,增加了SkinBuilder, GuiBuilder等多個周邊工具並且支持了A.I.R。

Java Swing架構的AsWing框架對於每一個java程式設計師來說都是非常容易學習的,這是世界上您能夠找到的學習成本最低的ActionScript UI組件框架。 AsWing使您可以在運行時動態地創建、更改和重新布局,甚至能夠讓您運行時變更組件的外觀主題。 由於AsWing是純代碼實現的,使用起來極其方便,您只需把AsWing的源檔案或者編譯好的swc檔案加入項目的class path即可使用,無需其他配置。 GuiBuilder工具是讓你可以像使用Delphi, VB那樣的所見即所得的界面編輯界面。您可以使用GuiBuilder設計界面,然後自動生成界面的原始碼。 SkinBuilder是界面主題製作工具。你只需要修改主題包裡面圖片檔案或者在Flash CS3裡面修改元件圖形,即可獲得一套您自己的外觀主題。  更重要的是,AsWing是基於BSD協定發布的開源軟體,這意味著您可以免費獲得以上的所有功能並且您有權力根據自己的需要自由地對其進行修改。

如果您正在開發的基於Flash/Flex ActionScript的套用程需要高靈活性、高效率的用戶界面,那么AsWing就是你最好的選擇。

假如您正在開發基於Flash平台的大型遊戲或者虛擬社區,AsWing更您是絕佳選擇。其所有組件均繼承自Sprite,並且無任何不兼容覆蓋,因此你可以方便的把組件添加到任何顯示元件上面,或者把任何顯示元件添加到組件上。比如你想在遊戲中的人物角色頭上加一個按鈕,或者你需要在一個組件容器中添加一斷演示動畫,只需要調用addChild添加即可。AsWing組件和普通顯示元件互不干擾可同時工作,擁有充分的靈活性。

AsWing特性

幾乎所有組件均採用MVC架構實現,模型,視圖,控制器分離,使得程式架構更加靈活穩定易改變。擁有超過40個的通用組件,包括樹,表格,混色器等大型組件均有完整的實現。鍵盤導航控制,快捷鍵等完好的支持。組件與普通Flash顯示元件可以互相包含,可以把Flash IDE創建的SimpleButton包裝成組件Button。可運行時更改外觀主題,可對整體組件、單種組件或單個組件更改外觀。組件庫核心純代碼的實現,方便使用,同時兼容Flex和Flash編譯器。擁有輔助工具方便的製作外觀主題和布局界面(SkinBuilder和GuiBuilder)。

AsWing與Flex Framework比較

Flex Framework(下面我將使用Flex簡稱FlexFramework)是Adobe官方開發的應用程式框架,它不僅包含UI組件,還包括其他工具,這裡我們不說AsWing和FlexFramework哪個更好,只是簡單的把它們的不同處列出來方便大家自己比較。


AsWing Flex
架構模型 更多的採用MVC;AsWing通過布局管理器來布局,布局與容器分離; 通過不同的容器和組件屬性來進行布局;也使用MVC,但僅限於一些比較大型的組件;
組件數量 組件數量略少於Flex;擁有JTable並支持自定義Cell渲染,能滿足大部分表格需求;AsWing團隊已經開始計畫開發表單類,以滿足對於複雜表單需求的用戶。有不少組件AsWing擁有而Flex沒有,比如Frame,再比如Flex沒有混色器,只有顏色選擇器,而AsWing兩者都有; 組件數量略多於AsWing;Flex3擁有AdvancedDataGrid這樣的超級組件;
鍵盤控制 有焦點控制器,鍵盤控制選擇(採用Tab切換焦點,上下鍵改變列表選擇等);支持Key Acceleration和Key Mnemonic; 有焦點控制器,鍵盤控制選擇(採用Tab切換焦點,上下鍵改變列表選擇等);
組件觀感 通過LookAndFeel類和ComponentUI來實現和改變組件觀感,通過SkinBuilderLAF可以方便的通過更改圖形資源來改變外觀,不支持CSS;可以運行時改變組件外觀; 通過相關外觀類的實現來改變外觀,並可以通過CSS來設定組件外觀;可以運行時改變組件外觀;
開發環境 可通過Flash CS3或者Flex編譯器編譯,通過ActionScript3進行程式設計; 只能用Flex編譯器編譯,同時使用MXML和ActionScript3進行程式設計(也就是說除了掌握ActionScript3,你還得掌握MXML);
與其他工具配合 擁有SkinBuilder製作外觀主題,GuiBuilder進行界面布局並生成ActionScript原始碼; 擁有FlexBuilder的Design界面進行界面布局,也有基於CSS的外觀設定工具;
開發相關 組件可與普通顯示元件無縫結合,比如Flash IDE製作的SimpleButton或者一段動畫可以和組件相互包容; 組件不能被隨意放置到普通顯示元件上面,如果是一段動畫或者SimpleButton;

相關詞條

相關搜尋

熱門詞條

聯絡我們