国产乱视频网站_久久亚洲一区二区三区四区_免费高清一级毛片_国产精品电影_国产精品乱码一区二区三区_美女天堂网

PS設計教程網歡迎你!

Flash CS4制作切換放大菜單效果(3)

文章來源于 動畫設計與制作208例,感謝作者 望月狼 給我們帶來經精彩的文章!
設計教程/設計教程/Flash教程2009-10-13
(6)下面創建動態文本對象,為按鈕添加文字。第39~47代碼創建一個不能被選擇且禁止接收鼠標消息的動態文本,并設置樣式和文本位置。其中第42行代碼禁止接收鼠標事件(如指針經過或單擊等事件);第43行代碼是設置字體樣

(6)下面創建動態文本對象,為按鈕添加文字。第39~47代碼創建一個不能被選擇且禁止接收鼠標消息的動態文本,并設置樣式和文本位置。其中第42行代碼禁止接收鼠標事件(如指針經過或單擊等事件);第43行代碼是設置字體樣式并調用 defaultTextFormat()方法,該方法返回一個文本格式對象(TextFormat),然后賦給defaultTextFormat屬性(指定應用于新插入文本的格式)。

AS3代碼

        var X:Number = Math.cos(radians) * R;   
        var Y:Number = Math.sin(radians) * R;   
  
        _mc.x = X;   
        _mc.y = Y;   
    }   
    var _text:TextField = new TextField();   
    _text.width = _text.height = 40;//因為默認情況下寬高都為100   
    _text.selectable = false; //文字不被選擇   
    _text.mouseEnabled = false; //指定此對象禁止接收鼠標消息   
    _text.defaultTextFormat = defaultTextFormat(); //設置字體樣式   
    _text.text = i;   
    _text.x = -_text.textWidth/2 - 2; //設置字體位置   
    _text.y = -_text.textHeight/2;   
    _mc.addChild(_text); //字體添加到對應按鈕中   
}   
  
function defaultTextFormat():TextFormat {   
    var format:TextFormat = new TextFormat();   
    format.font = "黑體";    
    format.color = 0xFFFFFF;   
    format.size = 20;   
    format.bold = true;   
    return format   
}   
  
function clickHandler(e:MouseEvent) {   
    var _mc:Sprite = e.target as Sprite;   
    newX = _mc.x;   
    newY = _mc.y;   
       
    Tweener.addTween(_mc, {x:0, y:0,scaleX:2, scaleY:2, time:1, transition:"easeInOutQuint"});   
    Tweener.addTween(container_mc.getChildAt(_length), {x:newX, y:newY,scaleX:1, scaleY:1, time:1, transition:"easeInOutQuint"});   
    _mc.mouseEnabled = false;   
    var mc:Sprite = container_mc.getChildAt(_length) as Sprite  
    mc.mouseEnabled = true;   
    container_mc.swapChildren(container_mc.getChildAt(_length),_mc);   
       
}

技巧與提示:

因為本例所編寫的代碼有70多行,為了更好地幫助用戶理解,因此分塊進行展示,用戶可以打開源文件來查看所有的代碼,關于更多文本格式(TextFormat)的詳細信息可參考幫助文檔。

步驟(5)中的第20行代碼是為按鈕注冊事件偵聽,偵聽器函數為步驟(6)中的第59行代碼clickHandler()函數,該函數的作用是當按鈕被鼠標單擊后,與中間按鈕進行位置的切換,其原理如圖9-12所示。

Flash CS4制作切換放大菜單效果

圖9-12 clickHandler()函數原理圖

(7)在clickHandler()函數中,首先取得被單擊按鈕的坐標位置(如步驟(6)中的第61和62行代碼),當按鈕被單擊時,被單擊按鈕緩沖運動到container_mc容器的中間(也就是原點(0,0))時會縮放2倍(如步驟(6)中的第64行代碼中的Tweener類方法),同時位于舞臺中間的按鈕會運動到被單擊按鈕的坐標位置(newX,newY),這樣就會產生切換效果(如步驟(6)中的第65行代碼),如圖9-13所示,這里還通過container_mc.getChildAt(_length)方法來取得中間按鈕,并通過69行代碼中的swapChildren()方法來進行交換z軸順序(也稱深度)。

Flash CS4制作切換放大菜單效果

圖9-13 按鈕的切換效果

技術看板:深度設置

重新設置容器列表中對象所在的深度,可以使用顯示對象容器.setChildIndex的方法來設置,下面列出幾種最為常用的方法,用戶可直接套用。

AS3代碼

//(1):用于將“要顯示的對象”進行置頂   
顯示對象容器.setChildIndex(要顯示的對象,要顯示對象容器.numChildren-1)   
  
//(2):用于將“要顯示的對象”進行置底   
顯示對象容器.setChildIndex(要顯示的對象,0)   
  
//(3):用于將“要顯示的對象A”插入“顯示對象B”之前   
var target:DisplayObject = 顯示對象容器.getChildByName("顯示對象B")   
顯示對象容器.setChildIndex(顯示對象A,顯示對象容器.getChildIndex(target))   
  
  
//(3):用于將“要顯示的對象A”插入“顯示對象B”之后   
var target:DisplayObject = 顯示對象容器.getChildByName("顯示對象B")   
顯示對象容器.setChildIndex(顯示對象A,顯示對象容器.getChildIndex(target)-1)

(8)到該步驟已經完成該實例的制作,用戶可采用相同的方法進行思路擴展,制作出其他相似的效果,如圖9-14所示。

Flash CS4制作切換放大菜單效果

圖9-14 思路擴展

技巧與提示:

思路擴展的源文件在本書配套光盤中的“Chapter09/源文件/切換放大菜單1.fla、切換放大菜單2.fla、切換放大菜單3.fla、切換放大菜單4.fla、切換放大菜單5(長方形排列).fla和切換放大菜單6(隨機切換按鈕皮膚).fla”中。

(9)按Ctrl+Enter組合鍵發布本例。

進入論壇參與討論和交作業:http://www.missyuan.com/viewthread.php?tid=424469

版權所有PS設計教程網公安備案:蘇公網安備 32058302001023號工信部備案:滬ICP備09005587號
aaa
主站蜘蛛池模板: 激情五月婷婷 | 精品国产三级a在线观看 | 日韩一区二区三区高清 | 日韩欧美在线看 | 精品99久久 | 国产偷v国产偷∨精品视频 国产偷v国产偷v亚洲 | 欧美在线观看禁18 | 两性免费视频 | av免费看在线 | 国产成人精品免高潮在线观看 | 国产一区二区电影 | 日韩欧美精品在线观看 | 日本在线不卡视频 | 成人午夜激情 | 综合精品久久久 | 最新国产精品精品视频 | 亚洲精品国产福利 | 91麻豆精品国产91久久久资源速度 | 亚洲国产成人久久一区二区三区 | 国产精品一区99 | 久久久99精品免费观看 | 久在线观看 | 激情五月婷婷综合 | 久久精品亚洲一区二区 | 国产亚洲一区二区av | a级性视频| 日本中文字幕在线观看 | 国产成人啪精品午夜在线观看 | 九九在线视频 | 日韩欧美一二三区 | 欧美成人精品 | 日本青草视频 | 在线天堂中文在线资源网 | 电影k8一区二区三区久久 | 精品一区免费 | 日本精品免费 | 欧美日韩专区 | 俺要去97中文字幕 | www.久草.com | 一区二区三区影院 | 九九热re|