推 scars:還是看不太懂 有什麼必要去假造MouseEvent 11/15 16:31
→ scars:而不是直接去call那個addEventListener設定的函式? 11/15 16:31
→ scars:如果真的要假造的話 直接去new一個然後dispatch不就好了? 11/15 16:33
→ osanaosana:感謝scars的提示,目前正在嘗試中... 11/15 22:18
推 cjcat2266:要假造event,可以參考EventDispatcher.dispatchEvent() 11/15 23:47
這是我參考範例改出來的
用滑鼠滾輪事件,是因為測試比較好測...
非常感謝大家的幫忙,終於偽造出滑鼠事件...
有鑑於大家不知道原PO到底在玩什麼花樣...
再補充一下說明,我有一個藉由webcam完成的影像動態偵測功能,
然後要教一些as3程式新手,或是設計背景的學生
怎麼寫出有動態偵測效果的Flash
所以我大概就是把下面這功能跟動態偵測功能搭配做成一個fla,
再讓學生去擴充Flash畫面,按鈕,功能,
而且AS3的部份完全可以依照坊間的Flash教學書寫,
不用考慮動態偵測的功能,
只是還沒有完成...還有很多小細節要修
不知道這樣子大家有沒有比較理解了...0rz
下面是完成版的程式,筆誤的部份已經改掉,多餘的程式也已經刪除
希望對有同樣問題的人,沒用過EventDispatch的人有幫助
主程式:
import FakeMouse;
var dispatch:FakeMouse = new FakeMouse();
addChild(dispatch);
root.stage.addEventListener(MouseEvent.MOUSE_WHEEL, wheel);
//動態偵測功能,滿足某些條件時執行以下程式
{
//問題關鍵******************************
//下面這一行程式執行後,應該要立即執行wheel
dispatch.doAction();
}
function wheel(event:MouseEvent)
{ //滑鼠滾輪的執行程式
}
====================================================
FakeMouse類別,繼承自Sprite
package {
import flash.display.Sprite;
import flash.events.Event;
import flash.events.MouseEvent;
public class FakeMouse extends Sprite
{
public function doAction():void
{
//設定一個假的滑鼠滾輪資訊
dispatchEvent( new MouseEvent(MouseEvent.MOUSE_WHEEL,
true,false,500,384,null,false,false,false,true,1));
}
}
}
再次感謝大家的幫忙...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.134.229
→ aquarianboy:sprite類別已經有dispatchEvent,如果沒特別的需求 11/16 01:05
→ aquarianboy:是不用另外再放一個這樣的東西給它的 :) 11/16 01:05
→ osanaosana:仍然失敗... 11/16 01:37
推 etrexetrex:我看到目前為止仍然不清楚原po想要寫的是什麼 11/16 01:49
→ osanaosana:0rz...我需要學怎麼發出假的滑鼠事件 11/16 01:55
→ aquarianboy:dispatchEvent(new MouseEvent(MouseEvent.CLICK)); 11/16 02:03
→ aquarianboy:其實我也想不太懂為什麼需要發假的滑鼠事件 11/16 02:04
→ aquarianboy:直接呼叫listener function不就行了嗎? 11/16 02:04
推 scars:removeEventListener是筆誤嗎? 還有FakeMouse沒被add到stage 11/16 03:29
→ aquarianboy:誠心推薦你EAS3這本書,一定會受用的 11/16 10:47
※ 編輯: osanaosana 來自: 120.127.47.36 (11/16 11:18)
※ 編輯: osanaosana 來自: 120.127.47.36 (11/16 11:47)
→ pm2001:EAS3不錯,就算不是拿學習也能當字典用 11/16 12:24
※ 編輯: osanaosana 來自: 120.127.47.36 (11/16 12:50)