在一個Flash動畫上點選右鍵時,它通常會出現如下圖所示的選單:
然而,倘若我們想要自訂一個屬於自己的選單列,那該如何達成呢?幸好在Flash Player 7之後,它為我們提供了一個「ContextMenu」,得以讓我們自訂屬於自己的右鍵選單,而這一切均需仰賴著「ContextMenu」來幫助我們達成這樣的效果。
隱藏內建的選單列
假設你只想要隱藏內建的選單列,只要透過呼叫「hideBuiltInItems()」即可隱藏內建的選單列,不過最後記得將「_leve0」這個「MovieClip」的屬性值「menu」指向我們所建立的「ContextMenu」即可:
程式一
var my_cm = new ContextMenu(); my_cm.hideBuiltInItems(); _root.menu = my_cm;
結果:
自訂一個屬於自己的選單列
程式二
var my_cm = new ContextMenu(); my_cm.hideBuiltInItems(); my_cm.customItems.push(new ContextMenuItem("sayHello",hello)); function hello(obj, menuItem) { trace(obj); trace(menuItem.caption); hello_txt.text = "Hello!"; } _root.menu = my_cm;
結果:
_level0 sayHello
不僅只有「MovieClip」可以有自訂的「ContextMenu」,包含「Button」和「TextField」都可以有自己的「ContextMenu」,例如你可以自訂一個「TextField」包含「copy」的選單項目,而經由執行這個選單項目會幫你複製「TextField」裡頭的字串等等,諸如此類的應用就自由發揮囉!