隨筆 - 8  文章 - 55  trackbacks - 0
          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          常用鏈接

          留言簿(6)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          朋友的Blog

          最新評論

          閱讀排行榜

          評論排行榜

          在MXML文件中實現ActionScript邏輯的幾種方法:
          最簡單的方法,在一個MXML文件中通過組件的事件直接書寫簡單的邏輯控制,但是并不推薦。

          <mx:Application xmlns:mx='http://www.macromedia.com/2003/mxml'>

          <mx:Panel title='My Application' >

          <mx:HBox>

          <mx:Label text='Temperature in Farenheit:'/>

          <mx:TextInput id='farenheit' width='120'/>

          <mx:Button label='Convert' click='celsius.text=(farenheit.text-32)/1.8;' />

          <mx:Label text='Temperature in Celsius:'/>

          <mx:Label id='celsius' width='120' fontSize='48'/>

          </mx:HBox>
          </mx:Panel>
          </mx:Application>

          第二種,在MXML文件中定義函數調用,比較適合簡單的應用,如

          <mx:Application xmlns:mx='http://www.macromedia.com/2003/mxml'>

          <mx:Script>

          <![CDATA[

          function calculate() {

          celsius.text=(farenheit.text-32)/1.8;

          }

          ]]>

          </mx:Script>

          <mx:Panel title='My Application' >
          <mx:HBox>
          <mx:Label text='Temperature in Farenheit:'/>
          <mx:TextInput id='farenheit' width='120'/>
          <mx:Button label='Convert' click='calculate();' />
          <mx:Label text='Temperature in Celsius:'/>
          <mx:Label id='celsius' width='120' fontSize='48'/>
          </mx:HBox>
          </mx:Panel>
          </mx:Application>

          第三種,把MXML文件和腳本文件分開,便于項目管理

          <mx:Application xmlns:mx='http://www.macromedia.com/2003/mxml'>

          <!-- Specify the ActionScript file containing the function. -->

          <mx:Script source='sample3script.as'/>

          <mx:Panel title='My Application' >

          <mx:HBox>

          <mx:Label text='Temperature in Farenheit:'/>

          <mx:TextInput id='farenheit' width='120'/>

          <mx:Button label='Convert' click='calculate();' />

          <mx:Label text='Temperature in Celsius:'/>
          <mx:Label id='celsius' width='120' fontSize='48'/>
          </mx:HBox>
          </mx:Panel>
          </mx:Application>

          sample.as文件代碼如下:
          function calculate() {
          celsius.text=(farenheit.text-32)/1.8;
          }

          第四種,使用MXML組件方式,更好的封裝實現。下面的例子定義了一個tempConverter組件

          <mx:Application xmlns:mx='http://www.macromedia.com/2003/mxml'

          initialize='converter.setupListener()'>

          <local:TempConverter id='converter' xmlns:local='*'/>

          <mx:Panel title='My Application' >

          <mx:HBox>

          <mx:Label text='Temperature in Farenheit:' />

          <mx:TextInput id='farenheit' width='120' />

          <mx:Button id='myButton' label='Convert' />

          <mx:Label text='Temperature in Celsius:' />
          <mx:Label id='celsius' width='120' fontSize='24' />
          </mx:HBox>
          </mx:Panel>
          </mx:Application>

          TempConverter.as文件代碼如下:

          class TempConverter implements mx.core.MXMLObject{

          public var view;

          function initialized(doc : Object, id : String) : Void {

          view = doc;

          }

          function setupListener() : Void {

          view.myButton.addEventListener('click', this);

          }

          function click(event) {
          view.celsius.text=(view.farenheit.text-32)/1.8;
          }
          }
          posted on 2006-04-29 13:40 blog搬家了--[www.ialway.com/blog] 閱讀(316) 評論(0)  編輯  收藏 所屬分類: Flex
          主站蜘蛛池模板: 夏邑县| 景洪市| 开化县| 汉阴县| 原阳县| 临江市| 堆龙德庆县| 定陶县| 科技| 蕉岭县| 平凉市| 扎赉特旗| 安溪县| 仁布县| 综艺| 札达县| 南漳县| 武平县| 南宫市| 峡江县| 霍州市| 收藏| 揭西县| 德兴市| 玉门市| 巴东县| 民勤县| 冕宁县| 南召县| 新闻| 台山市| 中超| 舟山市| 竹山县| 克拉玛依市| 德阳市| 泾源县| 波密县| 盐池县| 麦盖提县| 温州市|