在actionscript中识别按钮按下
在一个迷你flash游戏中,我有几个不同的关卡选择按钮,它们都连接到一个关卡更改功能,我只是想知道是否有一个属性存储了哪个按钮被按下,或者如果没有,如何确定哪个按钮被按下在actionscript中识别按钮按下,actionscript,button,Actionscript,Button,在一个迷你flash游戏中,我有几个不同的关卡选择按钮,它们都连接到一个关卡更改功能,我只是想知道是否有一个属性存储了哪个按钮被按下,或者如果没有,如何确定哪个按钮被按下 谢谢如果您使用的是AS3,您可以在levelChange函数中添加switch语句 例如。。。。如果有两个按钮,一个实例名为level1,另一个为level2 function levelChange( me:MouseEvent ):void { switch( me.currentTarget.name ) {
谢谢如果您使用的是AS3,您可以在levelChange函数中添加switch语句 例如。。。。如果有两个按钮,一个实例名为level1,另一个为level2
function levelChange( me:MouseEvent ):void
{
switch( me.currentTarget.name )
{
case "level1":
// Go to Level 1 here.
case "level2":
// Go to Level 2 here.
}
}
请尝试MouseeEvent的currentTarget属性示例:
我建议您将按钮存储在函数外部的变量中,如下所示:
var levelOne:MovieClip = levelOne;
所以你以后可以这样拜访他们:
function buttonClick(event:MouseEvent):void
{
if (event.currentTarget == levelOne) {
trace("level one selected");
else if (event.currentTarget == levelTwo) {
trace("level two selected");
}
}
您可能会澄清,您是在ActionScript3还是在ActionScript2中这样做的?另外,如果您在2中执行此操作,是否将脚本直接附加到按钮?我将为AS3提供一个答案,但如果这个问题是关于AS2的,可能没有帮助。嗯,它似乎不起作用。没有语法错误,但按钮不起作用这正是我写的,只是您使用的是IF语句而不是switch。@DustinSparks您根据Sam无法使用的实例名称搜索了名称,我觉得currentTarget应该突出显示。一天下来,山姆发现它很有用。
function buttonClick(event:MouseEvent):void
{
if (event.currentTarget == levelOne) {
trace("level one selected");
else if (event.currentTarget == levelTwo) {
trace("level two selected");
}
}