<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    探索與發現

    研究java技術

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      83 隨筆 :: 0 文章 :: 109 評論 :: 0 Trackbacks

    1.可以使用PopUpManager進行界面切換
    2.使用狀態(state),自定義一些狀態事件(StateEvent),在index.mxml(mx:application)中監聽組件派發的狀態事件類型,利用改變狀態來改變顯示的界面.


    ⑴用第一種方式來實現相對簡單,利用PopUpManager的一些靜態方法即可實現,比較適用于一些size相對較小的可視化組件,比如:登陸表單組件,或修改一個值,要求重新輸入一個新值等等類似情況.實現示例代碼如下:

    Js代碼
    1. <span style="font-size: small;">var win:*;   
    2. win = new loginPanel();   
    3. //彈出顯示登錄框   
    4. PopUpManager.addPopUp(win,this,true);   
    5. //登陸框顯示在中間   
    6. PopUpManager.centerPopUp(win); </span>  

     ⑵在第二種方法中利用state來改變顯示的界面則要相對復雜許多.

    ①首先我們需要自定義統一的狀態事件名稱

    Java代碼
    1. <span style="font-size: small;">package note.events{  
    2. /** 
    3.  * 狀態事件,每個狀態值要和狀態名稱一樣 
    4.  * @author halzhang 
    5. */  
    6. public class StateEvent{  
    7.           public static const NULL_STATE:String = "";  
    8.           public static const LOGIN_STATE:String = "loginState";  
    9.           public static const ADDNOTE_STATE:String = "addNoteState";  
    10.           public static const ADDUSER_STATE:String = "addUserState";  
    11.           public static const LISTALLUSER_STATE:String = "listAllUserState";  
    12.          }  
    13. }</span>  

     ②在Flex項目的主程序中定義state,當然也可以加上狀態切換的動畫.

    Html代碼
    1. <span style="font-size: small;"><!-- 定義狀態,我們分別定義了三個狀態,每個狀態對應一個自定義的可視化組件  -->  
    2.     <mx:states>  
    3.         <mx:State name="loginState">  
    4.             <mx:AddChild position="lastChild">  
    5.                 <!-- 狀態對應的自定義組件:登陸組件 -->  
    6.                 <view:loginPanel id="panel_login" x="195" y="89"/>  
    7.             </mx:AddChild>  
    8.         </mx:State>  
    9.           
    10.         <mx:State name="addNoteState">  
    11.             <mx:AddChild position="lastChild">  
    12.                 <!-- 狀態對應的自定義組件:添加留言組件 -->  
    13.                 <view:addNotePanel id="panel_addNote" x="10" y="44"/>  
    14.             </mx:AddChild>  
    15.         </mx:State>  
    16.           
    17.         <mx:State name="addUserState">  
    18.             <mx:AddChild position="lastChild">  
    19.                 <!-- 狀態對應的自定義組件:添加用戶組件 -->  
    20.                 <view:addUserPanel id="panel_addUser" x="10" y="44"/>  
    21.             </mx:AddChild>  
    22.         </mx:State>  
    23.           
    24.         <mx:State name="listAllUserState">  
    25.             <mx:AddChild position="lastChild">  
    26.                 <view:allUserPanel id="panel_allUser" x="10" y="44"/>  
    27.             </mx:AddChild>  
    28.         </mx:State>  
    29.     </mx:states></span>  

    ③在組件中派發狀態事件(StateEvent)

    Js代碼
    1. <span style="font-size: small;"> //關閉添加留言組件的時候派發"空"狀態事件,也就是主程序界面不顯示其他組件     
    2.  //如果想顯示其他組件,則派發相應的狀態事件     
    3.  internal function closeMySelf():void{    
    4.         appModel.dispatchEvent(new Even(StateEvent.NULL_STATE));    
    5.  }</span>  

    ④在主程序界面中監聽狀態事件(StateEvent),從而通過改變狀態來顯示我們需要的組件.

    Js代碼
    1. <span style="font-size: small;">                                                //添加狀態事件監聽,在程序初始化的時候執行  
    2.             internal function stateListener():void{  
    3.                 appModel.addEventListener(StateEvent.NULL_STATE,stateEventHandler);  
    4.                 appModel.addEventListener(StateEvent.LOGIN_STATE,stateEventHandler);  
    5.                 appModel.addEventListener(StateEvent.ADDNOTE_STATE,stateEventHandler);  
    6.             }  
    7.             //狀態事件處理函數  
    8.             internal function stateEventHandler(evt:Event):void{  
    9.                 this.currentState = evt.type.toString();  
    10.             }</span>  

    在項目中appModel是一個繼承 EventDispatcher,使用單例模式實現的程序模型.不知道讀者是否發現StateEvent中事件名稱是和主程序界面中定義的state的 name值是一致的.因為這樣定義我們就可以使用統一的狀態事件處理函數,就不需要先去判斷是哪個狀態事件,在來改變當前狀態.只要簡單的執行 this.currentState = evt.type.toString();

    posted on 2009-09-10 17:50 蜘蛛 閱讀(2868) 評論(2)  編輯  收藏 所屬分類: Flex

    評論

    # re: 對Flex開發過程中界面切換的認識(轉)[未登錄] 2010-08-27 09:21 kevin
    Dim InstalledObjects(12)
    InstalledObjects(1) = "JMail.Message" 'JMail 4.3
    InstalledObjects(2) = "CDONTS.NewMail" 'CDONTS
    InstalledObjects(3) = "Persits.MailSender" 'ASPEMAIL
    '-----------------------
    InstalledObjects(4) = "Adodb.Stream" 'Adodb.Stream
    InstalledObjects(5) = "Persits.Upload" 'Aspupload3.0
    InstalledObjects(6) = "SoftArtisans.FileUp" 'SA-FileUp 4.0
    InstalledObjects(7) = "DvFile.Upload" 'DvFile-Up V1.0
    '-----------------------
    InstalledObjects(9) = "CreatePreviewImage.cGvbox" 'CreatePreviewImage
    InstalledObjects(10) = "Persits.Jpeg" 'AspJpeg
    InstalledObjects(11) = "Persits.Jpeg" 'SoftArtisans ImgWriter V1.21  回復  更多評論
      

    # re: 對Flex開發過程中界面切換的認識(轉) 2013-04-29 15:52 we44444444444444444444444444444444444/////////////
    Flex:實現三個界面的動態切換 - 小石在思考 - Yecon - 和訊博客
    Flex:實現三個界面的動態切換 [原創 2009-2-18 11:06:54] 我頂 字號:大 ...flex 查看和 flex 相關的微博 界面 查看和 界面 相關的微博 state 查看和 ...
    yecon.blog.hexun.com/29488241...html 2013-4-4 - 百度快照
    急!在flex中如何點擊按鈕實現頁面切換(狀態切換)_百度知道
    1個回答 - 提問時間: 2012年07月26日
    可以用viewstack或者state
    zhidao.baidu.com/question/4558101... 2012-7-27 - 百度快照
    FLEX界面切換 - ITeye問答
    FLEX界面切換10 剛接觸FLEX,我想了解一下,在做FLEX的時候,我們能不能把MXML... 產品License 如何實現? 使用dwr出現的問題 http 怎么實現長連接, CXF的純...
    www.iteye.com/problems/16... 2013-4-23 - 百度快照
    Flex怎樣實現局部切換顯示????? - CSDN論壇 - CSDN.NET
    8條回復 - 發帖時間: 2012年5月17日
    Flex怎樣實現局部切換顯示? [問題點數:20分,結帖人templingbin] 收藏...比如我有一界面,頂部是標題欄,底部是狀態信息欄,中間就是用于切換各個界面內容...
    bbs.csdn.net/topics/390054... 2013-4-18 - 百度快照
    對Flex開發過程中界面切換的認識(轉) - 探索與發現 - BlogJava
    1條評論 - 發文時間: 2009年9月10日
    對Flex開發過程中界面切換的認識(轉) 1.可以使用PopUpManager進行界面切換 2....利用改變狀態來改變顯示的界面. ⑴用第一種方式來實現相對簡單,利用PopUpManager...
    www.tkk7.com/zhaijianhui/archive... 2013-4-23 - 百度快照
    js實現圖片切換_浮動窗口代碼_flex js_js圖片變換代碼
    js實現圖片切換_浮動窗口代碼_flex js_js圖片變換代碼 在php中加入js代碼js實現圖片切換網頁漂浮代碼左側浮動廣告代碼js廣告代碼管理空間漂浮物代碼js圖片展示js樹形...
    xrjvs.17173.adultcompanion.co.uk/ 2010-11-2 - 百度快照
    對Flex開發過程中界面切換的認識 - 努力吧 - ITeye技術網站
    利用改變狀態來改變顯示的界面. ⑴用第一種方式來實現相對簡單,利用PopUpManager... ②在Flex項目的主程序中定義state,當然也可以加上狀態切換的動畫. <!--...
    halzhang.iteye.com/blog/457... 2013-4-13 - 百度快照
    急!在flex中如何點擊按鈕實現頁面切換(狀態切換) - 已解決 - 搜搜...
    1個回答 - 最新回答: 2011年4月14日
    最佳答案: n種辦法, 你可以用model 或者狀態status 或者 viewstatic
    wenwen.soso.com/z/q2801163...htm 2013-3-20 - 百度快照
    一種基于flex的可視化多層流量切分界面的實現_系統架構_酷勤網
    一種基于flex的可視化多層流量切分界面的實現瀏覽次數:次 2012年07月07日 百度... 那么這些基本元素的數據模型如何實現呢?我們可以從這些元素的特性著手分析,如圖1...
    www.kuqin.com/system-analysis/201207... 2012-7-8 - 百度快照
    Flex怎么樣實現各個mxml頁面之間的來回轉換,最好給個例..._百度知道
    1個回答 - 提問時間: 2011年09月06日
    最佳答案: 不知道你的MXML各個頁面是什么方式的。 如果是以Module方式的建立的MXML頁面,可以使用_moduleInfo.load() 例: 假設我們有個testmod.mxml的Module ...
    zhidao.baidu.com/question/3164598... 2011-9-9 - 百度快照
      回復  更多評論
      

    主站蜘蛛池模板: 最近免费最新高清中文字幕韩国| 国产亚洲欧洲Aⅴ综合一区| 国产性爱在线观看亚洲黄色一级片| 9久热精品免费观看视频| 日韩免费视频在线观看| 亚洲成av人片在线看片| 日本在线看片免费| 亚洲精品无码MV在线观看| 免费无码AV一区二区| 四虎在线播放免费永久视频| 亚洲国产av玩弄放荡人妇| 色妞WWW精品免费视频| 亚洲av无码久久忘忧草| 麻豆最新国产剧情AV原创免费| 噜噜噜亚洲色成人网站∨| 香港a毛片免费观看| 亚洲精品偷拍无码不卡av| 黄页网站在线看免费| 亚洲精品黄色视频在线观看免费资源| 亚洲成A人片77777国产| 全黄A免费一级毛片| 亚洲国产91在线| 四虎永久免费地址在线观看| 99久久人妻精品免费一区| 亚洲综合色婷婷在线观看| 又粗又大又长又爽免费视频| 两个人看的www高清免费观看| 亚洲成AV人片一区二区| 亚洲精品国产免费| 亚洲精品无码久久久久久| 国产精品亚洲玖玖玖在线观看| 免费无码av片在线观看| 亚洲一区二区三区四区视频| 亚洲女久久久噜噜噜熟女| 2020因为爱你带字幕免费观看全集 | 日韩亚洲人成在线综合| 亚洲AV蜜桃永久无码精品| 全免费a级毛片免费看| 国产午夜亚洲精品不卡免下载| 亚洲AV综合色区无码一区| 国内免费高清在线观看|