Re: [問題] 如何以自定參數主動觸發滑鼠事件?
※ 引述《aquarianboy (高 見龍)》之銘言:
: ※ 引述《osanaosana (OSANA)》之銘言:
: : 語言:Action Script 3.0
: : 編譯版本:Flash 9
: : 我希望可以藉由不同的觸發方式主動令滑鼠事件發生,
: : 觸發的時候給予特定的滑鼠位置、滑鼠按鍵狀態。
: : 我要給AS3程式新手用,讓他們只要在Flash CS3設定好按鈕元件與簡單的動作程式,
: : 就可以藉由滑鼠以外的方式觸發按鈕元件。
: : 例如:我在Webcam偵測到攝影畫面的某一區塊有變動,此時命令滑鼠事件發生,
: : 設定事件的滑鼠位置為(100,100),按下左鍵狀態,但是"不影響"真滑鼠的位置與狀態
: : 令該位置的Flash按鈕被觸發,進行該按鈕自訂的動作(AS3程式新手寫的)
: : 這是我自己的想法,如果這辦法不行的話,有其他方法可以達到這目的嗎?
: 我看不是很懂上面的描述,以下是我猜的:
: 其實你並沒辦法改變滑鼠"真實"的位置
: 但你可以用先把滑鼠游標透過Mouse.hide()方法把它藏起來
: 然後再做一個做一個假的滑鼠游標貼上去,看起來好像就可以操作滑鼠一樣
: 至於要觸發按鈕的click listener也是可以用騙的
: test_btn.addEventListener(MouseEvent.CLICK, test_click);
: // 把參數預設值設定為null
: function test_click(evt:MouseEvent = null):void
: {
: trace("I'm clicked!");
: }
: test_click();
: 以上,供你參考
感謝您的意見...
可惜這個騙法不能用,因為寫程式的人不會知道介面上的按鈕叫做test_btn
所以我想直接弄一個假的滑鼠事件去觸發按鈕
我的目的不是改變滑鼠的位置或是狀態...
而是偽造一個滑鼠按鍵事件去觸發Flash按鈕
我希望最終結果是這樣的:
一個Fla檔案,以及上述功能的AS3程式,假設叫做 fmouse.as
Fla內容只有在屬性 > 文件類別 寫了 fmouse,其他內容為預設值,也就是空白狀態
然後丟給程式新手...假設新手叫做 j
j不會改fmouse.as的東西,因為j只是新手,看不懂原PO嚇死人的程式
這時j只要做出一個Flash按鈕,寫了幾行動作程式,編譯執行...
這時候Flash按鈕除了用滑鼠真的去click進行觸發之外,
也可以透過webcam進行畫面偵測,滿足條件時主動發出一個假滑鼠事件,
去觸發按鈕的動作程式...
關鍵在於原來的系統可能是這樣
滑鼠按下左鍵 > MouseEvent.CLICK 發動 > addEventListener設定的函式
今天原po要加新規則上去 ,變成這樣
滑鼠按下左鍵 > MouseEvent.CLICK 發動 > addEventListener設定的函式
^
原po程式呼叫 ^
希望大家能了解...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.228.133.88
推
11/15 16:31, , 1F
11/15 16:31, 1F
→
11/15 16:31, , 2F
11/15 16:31, 2F
→
11/15 16:33, , 3F
11/15 16:33, 3F
→
11/15 22:18, , 4F
11/15 22:18, 4F
推
11/15 23:47, , 5F
11/15 23:47, 5F
討論串 (同標題文章)
Flash 近期熱門文章
PTT數位生活區 即時熱門文章