Flex3學習之簡單教程

2020-12-11 51CTO

本文和大家重點討論一下Flex3 的一些基本知識,首先看一下Flex3的概念,Flex3是Adobe出品的開發RIA(RichInternetApplications)的工具,希望本文的介紹能讓你有所收穫。

Flex3 學習(簡單教程)

1.什麼是Flex3

Flex3是Adobe出品的開發RIA(RichInternetApplications)的工具,包括:

Flex3SDK(軟體開發包)
-Compiler(編譯器)
-Framework(Flex類庫)
-Debuggingtools(調試工具)

FlexBuilder3

-整合和開發環境
-基於eclipse
和Flex整合的伺服器產品
-LiveCycleDataServices2.51
-ColdFusion8

2.什麼是FlexApplication

用FLASH.swf文件格式封裝的發布在HTML網頁中的應用程式
需要在客戶端安裝FlashPlayer9
開發者可以完全訪問Flash繪畫API
應用程式使用ActionScript3
兼容FlashCS3和ActionScript3編寫的文檔

3.如何創建Flex3應用程式

步驟如下:
◆選取預定義的可視化組件
◆在用戶界面上添加組件
◆使用styles和skins自定義應用程式界面
◆增加事件處理和腳本處理代碼,控制應用程式行為
◆連接數據和通訊服務
◆Build和Run應用程式

4.Flex3的相關資源

http://examples.adobe.com/flex3/componentexplorer/explorer.html
http://www.adobe.com/devnet/flex/
http://flex.org/

5.ActionScript3語言基礎

<mx:script>…</mx:script>
trace()函數
<![CDATA[…..]]>
package
import
publicprotectedprivateinternal
static
function定義
const

6.ActionScript3語言基礎

extends
interface
字符串
數字計算
數組
類型轉換

7.ActionScript3語言基礎

if
switch
for
for..in
foreach…in
while
do…while
beakcontinue

8.觀察者模式(Observer)

什麼是觀察者模式?
生活中的觀察者模式(好萊塢原則、訂閱報紙、房產中介…)
AS3中事件例子:
button.addEventListener(「click」,onClick);
internalfunctiononClick(evt:MouseEvent):void{
txt.text=「clickabutton!」;
}

9.Flex3事件流

1).捕獲事件(從根節點到子節點,檢測對象是否註冊了監聽器,是則調用監聽函數)
2).目標階段(調用目標對象本身註冊的監聽程序)
3).冒泡階段(從目標節點到根節點,檢測對象是否註冊了監聽器,是則調用監聽函數)
註:事件發生後,每個節點可以有2個機會(2選1)響應事件,默認關閉捕獲階段。

10.IEventDispatcher接口

addEventListener()註冊事件監聽器
removeEventListener()移除事件監聽器
dispatchEvent()派發事件
EventDispatcher類

11.addEventListener

addEvnetListener(type:String,listener:Function,useCapture:Boolean=false,priority:int=0,useWeakReference:Boolean=false)

removeEventListener(type:String,listener:Function,useCapture:Boolean=false)

12.Event對象

Event類作為創建Event對象的基類,當發生事件時,Event對象將作為參數傳遞給事件偵聽器。
MouseEvent
KeyboardEvent

13.如何自定義事件

1).創建自定義事件名稱的Event
dispatchEvent(newEvent(「myEvnet」,true,false);

2).創建自定義事件類
PublicclassMyEventextendsEvent{
….
}

14.Flex3拖曳事件的實現

DragManager(mx.managers)
DragSource
DragEvent

15.什麼是數據綁定

數據綁定:當數據源對象的數據發生變化時,目標對象的數據會自動更新,而不需要我們再編寫代碼去強制更新
綁定實際也是藉助事件機制來完成的,當目標使用了數據綁定的時候,目標對象就會監聽數據源對象的某一固定事件。當數據源發生變化時,數據源會派發改變事件(ChangeEvent),通知目標對象更新數據。這個過程由Flex完成,不用我們手動幹預。
綁定的前提條件:源對象的數據和目標對象的數據格式相同。

16.實現Flex3數據綁定的方法

1).在對象的屬性標籤中,使用{}把數據源直接綁定到對象的某個屬性上。
2).在對象的屬性標籤中,使用{}把某個函數的返回值作為數據源綁定到對象屬性上。
函數的參數要使用[Bindable]綁定符號
[Bindable]
[Bindable(event=「eventname」)]
Event表示當數據源發生變化時,數據源所在對象派發的事件類型,它是可選項,默認的事件名是「propertyChange」,一般情況下只需要使用[Bindable]標籤

17.實現數據綁定的方法

使用<mx:Binding>標籤
 

  1. source=「…」destination=「…」  
  2. <mx:Modelidmx:Modelid=「books」> 
  3. <books> 
  4. <book> 
  5. <name>FLEX教程</name> 
  6. <author>張三</name> 
  7. </book> 
  8. <book> 
  9. <name>JAVA高級編程</name> 
  10. <author>李四</name> 
  11. </book> 
  12. </books> 
  13. </mx:Model> 

18.Object對象和動態對象

Object對象是一個動態對象
varo:Object=newObject();
o.name=「Jack」;
o.age=20;
o.address=「北京海澱100號」;
Model中的節點數據默認是Object類型,作數據源必須轉換成ObjectProxy類型。

19.數據綁定的幾點說明

[Bindable]標籤用於函數時,只能在setter和getter方式定義的函數前使用。稱為函數級別綁定。
[Bindable]標籤用於公有類時,這個類的所有公有變量、setter和getter方式定義的函數都可以用於綁定。成為對象級別綁定。

20.BindingUtils和動態綁定

Mx.binding.utils
BindingUtils提供了兩個靜態方法處理動態綁定
bindProperty(site:Object,prop:String,host:Object,chain:Object,commitOnly:Boolean=false)
bindSetter(setter:Function,host:Object,chain:Object,commitOnly:Boolean=false)

21.Flex3支持的樣式設置方式

1).直接使用CSS文件,系統默認使用default.css
<mx:Stylesource=「style.css」/>
2).使用<mx:Style>標籤
3).使用style設計器(->MXML)
4).使用對象的getStyle()和setStyle()
5).使用StyleManager類

22.樣式的類型

樣式屬性分為可以繼承和不可以繼承兩種
上級容器可繼承的屬性,直接作用其包含的組件。
全局樣式:global
VarglobaalStyle:CSSStyleDeclaration=StyleManager.getStyleDeclaration(「global」);

23.使用主題

主題是一套配置完成的樣式風格
Flex提供的幾種主題,文件類型.swc
建議使用.swc文件來封裝主題
給編譯指令添加
-themexxx.css
在Flex-config.xml中通過修改<theme>標籤配置主題

24.創建Flex3自己的主題

1).通過修改以後的主題文件創建自己的主題內容
2).使用compc編譯主題,生成swc文件(見幫助)
-include-filenamepath
-ooutput.swc
-include-classes
3).通過配置文件編譯主題
compc-load-configmyconfig.xml

【編輯推薦】

  1. Flex樣式的添加和卸載
  2. Flex安全沙箱問題解決方法
  3. 技術前沿 看Flex客戶端緩存技術如何使用
  4. 解析Flex全屏模式設置方法
  5. Flex內存洩露解決方法和內存釋放優化原則

【責任編輯:

程華權

TEL:(010)68476606】

相關焦點

  • linux學習教程之二
    相信不少想學習linux的新手們正愁不知道看什麼linux學習教程好,下面小編給大家收集和整理了幾點比較重要的教程,供大家學習,如需想學習更多的話,可到wdlinux學堂尋找更多教程。
  • 簡單粗暴TensorFlow學習教程(PDF)
    【導讀】Xihan Li(雪麒)撰寫了一份《簡單粗暴TensorFlow》的入門教程,基於TensorFlow的Eager Execution(動態圖)模式,力圖讓具備一定機器學習及Python基礎的開發者們快速上手TensorFlow。
  • 【原創教程】學習資料匯總_houdini之道09_00_05CG獵人原創完全入門教程發布
    教程介紹連接如下【原創教程】史上最完整houdini sop 中文完全精通教程_CG獵人houdini之道原創教程第二卷Geometry卷I大家好,我是CG獵人。歡迎來到我的原創教程-houdini之道完全學習系列,盡最大可能地系統和完整地傳授houdini知識,結合大量案例和原理分析,讓大家最高效率學習和掌握houdini。
  • g_mmpbsa之簡單教程
    其實該教程網上很多地方有,我之前也做過很多次,在這裡僅做簡單介紹,其實只是想引出後面的文章做一個系列。安裝教程首先從這裡下載(http://rashmikumari.github.io/g_mmpbsa/Download-and-Installation.html)對應版本,GROMACS2016和GROMACS2018版本都可以下載GROMACS-5.1.版本。
  • Python爬蟲免費學習教程推薦
    因此,Python爬蟲不僅僅是編程開發者應該學習的技能,更是廣大職場人重要的加分項。那麼作為零基礎小白應該如何學習Python爬蟲呢?下面老師精選了一些Python爬蟲免費學習教程推薦給大家,趕緊來一起看看吧~
  • PS教程:簡單的PS瘦臉方法
    【重大福利之二】加入學習QQ群135295528,跟老師一起交流學習。平面設計學習交流,PS設計,AI,PS,CDR學習交流。Logo設計。平面設計學習交流,PS設計。今天教大家如何給人物照片、大頭照瘦臉的教程,很簡單,初學者也很快學回,主要運用到濾鏡的液化 左推工具,參數設置好後幾十秒就完成了效果。效果對比:原始格式文件後,用photoshop自帶的CameraRaw插件或者lightroom,進行初步的曝光及色溫調整,儘量往正常色溫靠攏,最大化保留圖片細節,數值參考圖片。
  • 數據系列教程之numpy( 三)
    數據分析系列教程之numpy( 一)數據分析系列教程之numpy(二)上周講了數據分析入門的前兩節,numpy
  • 學習生信的系列教程
    但生信學習不是一朝一夕就可以完成的事情,也許你可以很短時間學會一個交互式軟體的操作,卻不能看完程序教學視頻後就直接寫程序。也許你可以跟著一個測序分析流程完成操作,但不懂得背後的原理,不知道什麼參數需要修改,結果可以出來,卻把我不住對還是錯。學習生信從來就不是一個簡單的事,需要做好持久戰的心理準備。
  • 生物信息之程序學習
    為了方便自己學習,也為了記述學習過程,就開始寫博客去記錄,力爭從一個小白的視角、從最基礎的角度去寫作,記述哪怕是最簡單的一步操作,一個錯誤,提供一個近乎人人可以直接上手的教程 (比如虛擬系統Docker的使用教程和任務流控制管理的Airflow教程,這些文章被轉載後,在同一平臺相比於同類的教程閱讀量多了10倍,我想這正是因為簡單、可操作,為初學者接觸這些工具提供了最大的便利)。
  • 學習卡通人物插畫的方法是什麼?簡單卡通人物插畫教程
    學習卡通人物插畫的方法是什麼?簡單卡通人物插畫教程!有不少在煩惱著插畫繪製過程中線稿階段的人。比如說,太過在意線條的畫法導致畫出來的東西形狀微妙,結果導致彩色插畫半途而廢…這種情況想必你們也遇到過吧?下面就給大家介紹下不需要線稿也可以畫出好插畫的方法。那麼下面就具體來看看人物插畫的步驟教程吧!
  • 簡單漂亮的摺紙花瓶實拍圖教程
    學習摺紙花瓶的製作教程可以首先通過我們這裡看到的摺紙花瓶教程來學習21.也同樣需要一個相同幅度的回折。摺紙大全圖解的製作教程提供了一個非常完美的手工摺紙學習的機會34.接著將摺紙模型的底邊向上翻折起來。
  • 手工diy蝴蝶結教程,簡單又好看
    手工diy蝴蝶結教程,簡單又好看任何時候任何年齡,蝴蝶結都是女生的最愛,其實蝴蝶結的製作都大同小異,前期我們也有介紹,今天小編還要為大家分享一款更簡單的蝴蝶結製作。下面我們就來一起做我最愛的蝴蝶結吧!1,一個藍色長布條、兩個白色長布條、一個紅色布條和一塊紅色短布條,他們的長度一次遞減。
  • 簡單詳細的教程,一看就會!
    畫頭髮有什麼技巧,學習繪畫難嗎?怎樣才能學好繪畫?學繪畫有什麼快速提升的方法等等。想必這些都是繪畫初學者們比較關心的問題吧,就是不知道怎麼才能畫好人物的頭髮,也不知道怎樣才能繪畫出自己想要的那種效果。那麼今天靈貓就在網絡上收集整理了一些關於如何畫好頭髮的教程,幫大家解決畫頭髮這個問題,教程非常簡單,趕緊來看看叭:1、先畫一個草稿2、在畫完頭髮之後可以在頭髮,外面加一點髮絲,粗的細的都來些。
  • 521學習課堂美國之音經典口語教程01|At the Airport 在機場
    點擊上方↑↑↑「521學習課堂」關注我
  • MIT深度學習教程:一文看懂CNN、RNN等7種範例(TensorFlow教程)
    新智元報導  來源:medium作者:Lex Fridman  編輯:肖琴【新智元導讀】作為MIT的深度學習基礎系列課程的一部分,本文概述了7種架構範例的深度學習,每個範例都提供了TensorFlow教程的連結。
  • Anki 學習指南(優質資源 & 教程總結)
    並且 Anki 的廣大用戶一直熱衷於推廣這款強大的間隔重複算法軟體,為此撰寫了很多 Anki 教程。為了徹底掌握 Anki,我看過許多教程。雖然 Anki 教程豐富,卻良莠不一。有的教程本意雖好,但由於作者對 Anki 一知半解,難免有誤人子弟之嫌。
  • 學習韓語基礎入門韓語自學教程視頻
    導師給我解釋的時候用很簡單的詞語解釋,跟這個一樣的道理。可是你會不明白那個解釋的詞語。那麼再查那個生詞,這樣反覆。不必要那麼長時間,因為5000-10000的生詞裡會反覆。查然後寫,寫以後念。這樣你已經自然學了韓語的語法。學習韓語基礎入門韓語自學教程視頻
  • 【原創教程】史上最完整houdini sop 中文完全精通教程_CG獵人houdini之道原創教程第二卷Geometry卷I
    (注意,每個月會開始一個套的教程更新,與其他教程同步更新。預計今年內全部更新完畢)大家好,我是CG獵人。歡迎來到我的原創教程-houdini之道完全學習系列,盡最大可能地系統和完整地傳授houdini知識,結合大量案例和原理分析,讓大家最高效率學習和掌握houdini。
  • 百合花的簡單手工摺紙教程
    將其中的一個角拿起來百合花的簡單手工摺紙教程手工製作能夠讓我們更快樂,它讓我們沉寂的生活變得繽紛多彩。喜愛思考是傳遞輕鬆快樂的生活態度。小編每天為各位達人提供各種各樣的生活創意、小製作圖片教程。非常希望興趣相投的MM聚焦在這裡,學習你的美好創意! 今日互動 你需要學習那方面的手工或別的好建議?(在下面的留言區回復哦,讓我看到你們的雙手)
  • Keras 教程: Python 深度學習終極入門指南
    在這篇 Keras 教程中, 你將學到如何用 Python 建立一個卷積神經網絡!事實上, 我們將利用著名的 MNIST 數據集, 訓練一個準確度超過 99% 的手寫數字分類器.開始之前, 請注意, 本指南是面向對應用深度學習感興趣的初學者的.