作者clifflu (缺錢啦 @@)
看板Flash
標題[心得] 避免下方圖層接收到事件
時間Thu Sep 15 00:52:40 2005
本來是準備來發問的, 不過突然想到做法了 (在書上或版上看過) 就整理分享吧.
事由:
我希望在一個 Flash 頁面之上, 透過某種方式 (loadMovieNum / MovieClipLoader)
載入一個新的 Flash 檔至 _level1 (暫定). 同時, 我希望原本的 flash (_level0)
的物件仍然能夠被看見 (透過設定 _level1._alpha 得以做到), 但我不希望那些在
_level0 的物件仍然能夠發生互動事件 (不論是鍵盤或滑鼠事件).
目標:
讓上層物件, 阻擋下層物件對事件之處理.
方法:
在 _level1 上建立一個感應區和 _level0 一樣大的 btn 元件, 除了感應區外什麼
都不需要有, 以免影響視覺效果. 將此 btn 物件置於該 flash 之最下層.
如此則所有的 mouse click 都會因為 _level1 深度的問題, 而使得 _level0 不會
接收到. 同時因為該 button 位於 _level1 之最下層, 故不會影響該檔案中之事件
獲取. 如此便能做到類似 Form.showDialog() 的效果 (或以前的 showModel)
至於鍵盤事件則應該可以透過 tabIndex 及取消 Access Key 來設定. 由於我手上
的案子並不用做到這些, 所以就留待能者補完了 ^^;;
這個方法應該是在書上看到的, 等下次翻到再來補齊出處吧.
---
Flash 齡.... 第八天 .... XD
--
鬼壓床怎麼辦
騎上去啊
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 222.157.137.33
※ 編輯: clifflu 來自: 222.157.137.33 (09/15 00:53)
→ pm2001:簡單的說擺個alpha=0的物件在上面擋住就好了阿XD 61.223.193.238 09/15
→ Jedic:這方法大家用了四五年有囉~ 61.66.87.130 09/15
→ Jedic:缺點是整個畫面都會讓游標變手指狀 61.66.87.130 09/15
→ wegerx:useHandCursor = false就可避免變手指狀 218.165.79.57 09/15
→ Jedic:那得一一設定 61.66.87.212 09/15
→ Jedic:在Flash5時代沒有這種方法 61.66.87.212 09/15
→ Jedic:但實務上已經常用整塊大透明按鈕擋住下層按鈕了 61.66.87.212 09/15