首页 > 其他 > 详细

Flex contextMenu

时间:2014-04-13 08:22:55      阅读:363      评论:0      收藏:0      [点我收藏+]

没想到再这里也要跌跌撞撞。 这个东西我很久之前就懂了的啊!

 

最开始是这么写的:

1
2
3
4
5
6
7
8
private function init():void
{
    var contextMenu:ContextMenu = new ContextMenu();
    var contextMenuItem:ContextMenuItem = new ContextMenuItem("复制");
     contextMenuItem.addEventListener( ContextMenuEvent.MENU_ITEM_SELECT, OnGetPointPos );
    contextMenu.customItems.push(contextMenuItem);
    contextMenu.hideBuiltInItems();
    c= contextMenu;<br>                  ...

  编译(没有错误),运行,右键菜单不出来!

难道是ContextMenu 没有导入的原因吗? 我记得flash.ui 等下面的 包和类 是不需要导入的啊,就想java.lang一样,

怎么搞都不行! 哎,,,

会不会是当前主程序mxml太混乱了的原因?再写一个(主要就是把内容复制过去)。 还是不行,。。

 

网上搜索,—— 结果是相当多,但多是不太相关———— 难道大家都没遇到这个问题?

 

再写一个主程序mxml,名字就叫ContextMenu,前面两个mxml报错了!——1046: 找不到类型,或者它不是编译时常数: ContextMenu

难道之前是由于“某些原因”, 不报错,现在就报错了?  不对啊,我之前清理clean过整个项目的——按照我之前的经验, 我知道flex有些奇怪的编译问题,但是不至于这么奇怪吧!

 

 

 


于是将ContextMenu导入。 还是不行。 写成

var contextMenu:flash.ui.ContextMenu = new flash.ui.ContextMenu()
__ 命名空间冲突?是的!!!!

哦,我想起来了! 我有一个ContextMenu的mxml,我擦!!!

改名,还是不行! 不能使用this.ContextMenu的this吗? 网上好像说要 canvas、 box 等interactive的组件才有contextmenu? 这么奇怪?

改! 还是不行、

后面(在text控件文本右键)看到flex本身就有“复制”右键选项 ———— 冲突了!

改名!
var contextMenuItem:ContextMenuItem = new ContextMenuItem("复zxfdsf制");


———————— OK!!! 内流满面、居然这样就行了!。。。。。。。


奇葩的经验教训。

 


另外,如果想要屏蔽flex原有的右键选项,参考http://blog.csdn.net/aijingyi/article/details/7723177

Flex contextMenu,布布扣,bubuko.com

Flex contextMenu

原文:http://www.cnblogs.com/FlyAway2013/p/3661716.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!