作者kazenol (隨便啦)
看板Flash
標題Re: [問題] 急問一個按鈕的老問題
時間Sun Oct 14 00:52:42 2007
※ 引述《cjcat2266 (CJ Cat)》之銘言:
: ※ 引述《kazenol (隨便啦)》之銘言:
: : 用這種寫法會變成重複,按下去一次就trace所有的Movie name出來而
: : 不是只trace所按下的影片,如果加上getURL就變成一次開出所有的視窗@@
: : 不知道怎麼解決,請高手幫幫忙。
: 在AS2裡面MC的onMouseUp event handler的偵測範圍是整個場景
: 也就是說當滑鼠不在MC上的時候放開左鍵
: 所有MC的onMouseUp event handler還是會被呼叫
啊?!這麼爛?
我的目的是用CreateEmptyMovieClip去產生一組動態的影片,並且為它們附上
URL可供點選開啟視窗,這樣自然而然想到用onMouseUp,可是沒想到居然是偵測
所有場景,這未免太奇怪的設定。手邊沒有flash,明天做試驗看看
感謝您回答
: 這個時候裡面還要再加一個hitTest來判斷滑鼠位置
: myClip_mc.onMouseUp = function() {
: var xMouse:Number = this._parent._xmouse;
: var yMouse:Number = this._parent._ymouse;
: if (this.hitTest(xMouse, yMouse, true)){
: //code
: }
: };
: 你也可以直接用MC的onRelease event handler
: 這樣的話就跟Button一樣,有效區域只有在MC的圖形範圍
: 至於AS3的MouseEvent.MOUSE_DOWN event就只會在MC的圖形範圍被產生
: 所以不需要hitTest來判斷滑鼠位置
: import flash.events.MouseEvent;
: myClip_mc.addEventListener(MouseEvent.MOUSE_DOWN, hit);
: function hit(e:MouseEvent){
: //code
: }
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.109.224.205
推 etrexetrex:你可以用onPress 或onRelease 10/14 01:29
→ etrexetrex:MC.onMouseUp 只要MC還存在 不管你點哪裡都會執行 10/14 01:29
推 jonathanmeow:爛?不會啊 每個事件都有每個事件的用途罷了.... 10/14 19:24