flash as3利用contextmenu成功实现右键响应

更新时间:15-10-22 23:11 热度:278
 

flash对右键的按下没有对应的响应事情,不过有的时刻需求用到这个事情.
在曾经可以依据key的侦听事情中key.isdown(2)来判断按下了右键.
不过在as3中key.isdown函数由于安全端由被删掉了.那末在as3中怎么取得右键的按下事情呢?
as3的mouse和mouseevent也没有右键的事情.一样在keyboard和keyboardevent中没有右键有关的事情.
不过,假如想想contextmenu,就有方法了,在flash中,右键响应只关涉着右键点菜单.所以在contextmenu里边有右键的响应事情contextmenuevent.menu_select(在as2里边是contextmenu.onselect).
as3汉字帮忙里边对menuselect的诠释:在用户第一次生成上下文点菜单但尚未显露上下文点菜单内部实质意义时调小曲度。 这将准许您的手续在显露点菜单之前改正上下文点菜单项集。 用户经过右键裸机指针设施来世成上下文点菜单。
所以可以用menuselect来作为右键的响应事情.在这个事情执行后便会显露右键点菜单.在这之前,可以执行响应函数,改正对应的点菜单内部实质意义.
运用办法:
as3:

mymenu = new contextmenu();
mymenu.hidebuiltinitems();
mymenu.addeventlistener(contextmenuevent.menu_select,menuselect);
this.contextmenu = mymenu;
function menuselect(e:contextmenuevent)
{
trace(”menuselect”);
}
as2:

var my_cm:contextmenu = new contextmenu();
function menuhandler(obj:object, menu:contextmenu) {
trace(’menuselect’);
}
my_cm.onselect = menuhandler;
this.menu = my_cm;