posts - 17, comments - 4, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          [轉(zhuǎn)]Flex 中的彈出窗口

          Posted on 2007-08-28 14:11 愚人 閱讀(7545) 評論(0)  編輯  收藏 所屬分類: Flex2
          1. 最簡單的警告窗口

          你需要先導(dǎo)入Alert類: import mx.controls.Alert;

          然后在想要彈出警告的時候使用:
          Alert.show(“你確定要退出系統(tǒng)嗎?”,“確認”,Alert.YES|Alert.NO,null,logout)

          參數(shù)說明:第一個參數(shù)是要顯示的文本,第二個參數(shù)是窗口的標題,這兩個參數(shù)是最經(jīng)常用的。第三個參數(shù)是按鈕,默認是兩個:YEW 和 NO,當(dāng)然你也可以自定義,比如Alert.CANCEL,第四個參數(shù)是父窗口,默認為null。第五個參數(shù)是窗口關(guān)閉后調(diào)用的函數(shù)名,如果你想要在點擊確定之后觸發(fā)什么事件,就需要定義這個參數(shù)。這里我要調(diào)用logout,請注意,不要在這里寫logout()。(沒有括號)logout 函數(shù)如下:

          private function logout(event:CloseEvent):void
          {
              if(event.detail == Alert.YES)
              {
                  // 具體操作            
              }
          }

          因為這個函數(shù)是觸發(fā)的,所以參數(shù)是一個CloseEvent 。“event.detail == Alert.YES” 這行代碼判斷點擊的是不是確定按鈕。CloseEvent 中的 detail 屬性專門判斷點擊了哪個按鈕,這樣就可以用戶的點擊控制代碼。

          簡單的Alert 用法就是這樣,更多相關(guān)信息請看幫助文檔。

          2.彈出窗口

            這個就比較強大了,需要使用一個類,那就是PopUpManager,同樣,使用前你需要先導(dǎo)入:

          import mx.managers.PopUpManager;

            然后你就要創(chuàng)建一個Compoment 作為彈出窗口,這個沒什么特別的,創(chuàng)建一個普通的Compoment 就行,這里我創(chuàng)建了一個文件叫做PopWindow,就是一個簡單的Canvas,里面就放一個圖片。代碼如下:

          PopWindow.mxml:

          <?xml version="1.0" encoding="utf-8"?>
          <mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" width="100" height="100">
              <mx:Script>
                  <![CDATA[
                      import mx.managers.PopUpManager;
                  ]]>
              </mx:Script>
              <mx:Image x="0" y="0" source="assets/face.PNG" click="PopUpManager.removePopUp(this)" width="90" height="82"/>
              
          </mx:Canvas>

          其中 removePopUp 是 PopUpManager 的一個方法,就是移除當(dāng)前彈出的窗口,這里我設(shè)置了點擊圖片的時候就移除彈出窗口。接下來我們在主程序中創(chuàng)建并彈出窗口:

            var pop : PopWindow= PopWindow(PopUpManager.createPopUp(this,PopWindow,true));

             這就完成了,這個pop 是一個PopWindow(就是剛才創(chuàng)建的Component的文件名)類型的變量,由于PopUpManager 的 createPopUp 返回的是一個 IFlexDisplayObject,你需要將其強制轉(zhuǎn)換成為PopWindow類型才能賦值給 pop 變量。下面詳細說明一下 createPopUp 的這幾個參數(shù):

          第一個參數(shù)是彈出窗口的父窗體,這個相信大家都明白。
          第二個參數(shù)是彈出窗口的類名,也就是組件的文件名,在Flex中一個MXML文件也對應(yīng)一個類。PopUpManager是根據(jù)這個類來創(chuàng)建彈出對話框。
          第三個參數(shù)是模態(tài)標記。如果是 true ,就創(chuàng)建一個模態(tài)對話框;否則創(chuàng)建的就是一個非模態(tài)的對話框。
          PopUpManager 還有一個參數(shù),不過不常用,具體請參考幫助文檔。

          然后你就可以對彈出對話框操作了,想要移除就用 removePopUp(pop)。另外,如果是非模態(tài)的,可能在點擊程序其它部分的時候窗口就不見了,但是它并沒有移除,怎么讓它出來呢?這個時候就需要 PopUpManager  的另外一個方法: bringToFront(),這個方法可以把窗口放到最前。你可以控制,讓程序第一次的時候是創(chuàng)建對話框,以后就是把窗口放到最前。

          轉(zhuǎn)自http://www.zhuoqun.net/article.asp?id=621

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 彝良县| 东港市| 九龙城区| 勃利县| 灵山县| 马山县| 凉山| 霍邱县| 韶山市| 大埔区| 屯门区| 馆陶县| 萝北县| 文水县| 宜黄县| 三明市| 石楼县| 武山县| 平顺县| 司法| 搜索| 竹山县| 运城市| 永和县| 海南省| 镇江市| 阿图什市| 尚义县| 浦北县| 五峰| 砀山县| 荥经县| 阿拉尔市| 民勤县| 天气| 浙江省| 张家港市| 郎溪县| 大田县| 商丘市| 双柏县|