|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
Flash广泛用于创建吸引人的应用程序,它们包含丰富的视频、声音、图形和动画。可以在Flash中创建原始内容或者从其它Adobe应用程序(如Photoshop或illustrator)导入它们,快速设计简单的动画。
18.ContextMenuClass和ContextMenuItemClass
Flash终究撑持右键菜单了,有了这两个类,用户能够为所欲为的定制本人的Flash右键菜单。
关于这个功效,我是垂涎以久,由于这意味着纯Flash站能够经由过程它举行便利的导航,Flash游戏也算是有了最为烦琐的功效菜单,总之,对如许的好器材,我要多费一点吐沫。
闲话休提,先来看一个例子:- varmy_cm=newContextMenu();
- my_cm.hideBuiltInItems();
- my_cm.customItems.push(newContextMenuItem("Sucy",func_1));
- my_cm.customItems.push(newContextMenuItem("Alien",func_2));
- my_cm.customItems.push(newContextMenuItem("Jinni",func_3));
- my_cm.customItems.sort();
复制代码 functionfunc_1(){trace("CalledSucy!")}
functionfunc_2(){trace("CalledAlien!")}
functionfunc_3(){trace("CalledJinni!")}
_root.menu=my_cm;
测试,点击鼠标右键,你看到了甚么?哈哈,点击Alien,Jinni或Sucy就能够挪用func_1,func_2和func_3。
实在,增加右键菜单的步骤非常复杂:
1.创立ContextMenu菜单工具。
2.创立ContextMenuItem菜单项工具,并增加到ContextMenu工具中。
3.为每一个菜单项定制处置函数。
4.使用菜单工具到MC,Button或TextField。
办法为:MoiveClip/Button/TextFieldinstanceName.menu=ContextMenuinstaceName;
比方,my_btn.menu=my_cm;
再转头看看这个例子的代码,关于右键菜单的中心部分的你已晓得得差未几了,他们是:
a)newContextMenu();
创立一个ContextMenu工具。
复杂的说,它是一个容器,用来艳服用户界说的菜单项。
除像本例中的体例复杂的创立外,还能够在创立的同时增添一个事务,这个事务将在用户点击右键呈现菜单的时分产生。
例:- varmy_cm=newContextMenu(rightClick);
- functionrightClick(){("RightClicked!")}
- _root.menu=my_cm;
复制代码 点击鼠标右键,输入"RightClicked!";
实在到了这,你已晓得怎样来利用右键事务了,遗憾的是,不管怎样,菜单都是会弹出来,以是假如你想利用与菜单有关的右键效果,仍旧会十分的不爽。:(
b)ContextMenu.hideBuiltInItems();
ContextMenu工具的办法。
功效从名字就能够看出来了,埋没内建菜单项,比方copy,ZoomIn等等,固然,settings和版权信息是不会埋没的。
别的,你要还要注重的是,自界说的菜单项不克不及起诸如copy,ZoomIn等名字,不然他们不会起感化。
c)ContextMenu.cutstomItems
ContextMenu工具的属性。
它是一个数组,存储着一切的用户界说的菜单项,由于菜单项自己是工具,以是这个数组的每个元素都是工具。
更妙的是,你能够用数组的操纵办法来操纵他,这对你来讲必定不生疏。
你能够用push()办法来项菜单中增加菜单项,并用cutstomItems的体例会见它。
而其他数组的办法你也能够善加使用:
比方像本例中的体例,你可恣意地增加菜单项,然后对cutstomItems利用sort()办法。
最初呈现的菜单就是按字母序分列的。
别的,你也能够经由过程数组操纵静态的改动菜单项的内容。
d)newContextMenuItem(caption,func)
创立一个ContextMenuItem工具。
caption:菜单项的称号(注重方才提到过的,不要和内建菜单同名)。
caption也是ContextMenuItem的属性,寄义不异。
func:菜单项被点击后对应的处置函数的称号。
别的几个ContextMenuItem工具的属性也能够在创立工具的时分作为参数传送。
(1)enabled:菜单项是不是可用。(不成用为灰色)默许为true。
(2)separatorBefore:菜单项上面是不是会呈现分开线(用于菜单分类)。默许为false。
(3)visible:菜单项是不是可见。默许为true。
完全的机关函数为:newContextMenuItem(caption,func,separatorBefore,enabled,visible);
例:
使用AdobeActionScript3.0开发高级的交互式项目。设计人员和开发人员可使用它来创建演示文稿、应用程序和其它允许用户交互的内容。 |
|