[問題] 關於滑鼠的事件 ???
就是我現在要做一個功能
在畫面上有20多個物件 要做三個功能
1. 當滑鼠在物件上時 滑鼠游標會變成 "手的型狀"
2. 當滑鼠在物件上時 物件會變色
3. 當滑鼠按下物件時 會再變另一個顏色
而我的作法~~我將3種顏色做成各自元件
再將這3個元件合成一個元件 再去控制這誰的 visible是 true 誰是 false
因為那個物件 是3個元件合成 而且我要分別控制那3個元件
所以物件的類型只能用 影像 不能用按鈕
然後將 物件的 buttonMode 設為 true 完成第1個要求
用滑鼠事件 MouseEvent.Click 完成第3個要求
然後 在每個 Frame 用 hitTestOject 完成第2個要求
不過....問題來了...
感覺上我重複判斷了 滑鼠目前是否在物件中 重複判斷了3次
在 buttonMode 時...我自己想...系統應該是會判斷滑鼠是否在物件的範圍內
如果是就改成手的形狀....
而在 MouseEvent.Click 可能系統相同的動作又判斷了一次....
而我再 hitTestObject 又判斷一次....
如果真的這樣...那這是個很浪費效能的作法....
想請問有辦法
只判斷一次 滑鼠目前是否在物件中
假如是~~就同時完成 換成手的形狀 換掉物件顏色 和判斷是否有 Click 滑鼠嗎 ???
另外~~判斷滑鼠目前是否在物件中
用 hitTestOject 和 startDrag, dropTarget
這兩種方式 哪一個比較節省效能 ???
謝謝了 ^^
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.116.155.241
→
04/29 05:39, , 1F
04/29 05:39, 1F
→
04/29 05:40, , 2F
04/29 05:40, 2F