MX2004--AS2.0 新特性实例教程(六)
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-14
18.ContextMenu Class和ContextMenuItem Class Flash终于支持右键菜单了,有了这两个类,用户可以随心所欲的定制自己的Flash右键菜单。 对于这个功能,我是垂涎以久,因为这意味着纯Flash站可以通过它进行方便的导航,Flash游戏也算是有了最为简便的功能菜单,总之,对这样的好东西,我要多费一点吐沫。 闲话休提,先来看一个例子:
1.创建ContextMenu菜单对象。 2.创建ContextMenuItem菜单项对象,并添加到ContextMenu对象中。 3.为每个菜单项定制处理函数。 4.应用菜单对象到MC,Button或TextField。 方法为:MoiveClip/Button/TextField instanceName.menu=ContextMenu instaceName; 例如,my_btn.menu=my_cm; 再回头看看这个例子的代码,关于右键菜单的核心部分的你已经知道得差不多了,他们是: a)new ContextMenu(); 创建一个ContextMenu对象。 简单的说,它是一个容器,用来盛装用户定义的菜单项。 除了像本例中的方式简单的创建外,还可以在创建的同时增加一个事件,这个事件将在用户点击右键出现菜单的时候发生。 例:
其实到了这,你已经知道如何来使用右键事件了,遗憾的是,无论如何,菜单都是会弹出来,所以如果你想使用与菜单无关的右键效果,仍然会非常的不爽。 :( b)ContextMenu.hideBuiltInItems(); ContextMenu对象的方法。 功能从名字就可以看出来了,隐藏内建菜单项,例如copy,Zoom In等等,当然,settings和版权信息是不会隐藏的。 另外,你要还要注意的是,自定义的菜单项不能起诸如copy,Zoom In等名字,否则他们不会起作用。 c)ContextMenu.cutstomItems ContextMenu对象的属性。 它是一个数组,存储着所有的用户定义的菜单项,因为菜单项本身是对象,所以这个数组的每一个元素都是对象。 更妙的是,你可以用数组的操作方法来操作他,这对你来说一定不陌生。 你可以用push()方法来项菜单中添加菜单项,并用cutstomItems[i]的方式访问它。 而其他数组的方法你也可以善加利用: 例如像本例中的方式,你可任意地添加菜单项,然后对cutstomItems使用sort()方法。 最后出现的菜单就是按字母序排列的。 另外,你也可以通过数组操作动态的改变菜单项的内容。 d)new ContextMenuItem(caption,func) 创建一个ContextMenuItem对象。 caption: 菜单项的名称(注意刚才提到过的,不要和内建菜单同名)。 caption也是ContextMenuItem的属性,含义相同。 func: 菜单项被点击后对应的处理函数的名称。 另外几个ContextMenuItem对象的属性也可以在创建对象的时候作为参数传递。 (1)enabled: 菜单项是否可用。(不可用为灰色)默认为true。 |
||||
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于MX2004--AS2.0 新特性实例教程(六)的所有评论