动作脚本 3;如何制作切换按钮?
Actionscript 3; how to make a toggle button?
目前正在制作一个按钮,用于打开和关闭影片剪辑的可见性。这是我的代码;
infoButton.addEventListener(MouseEvent.CLICK, howToPlay);
var boxUp:Boolean = false;
function howToPlay(event:MouseEvent):void
{
if(boxUp == false)
{
infoBox.visible = true;
boxUp = true;
}
if(boxUp == true){
infoBox.visible = false;
boxUp = false;
}
}
但是当点击按钮时没有任何反应。我假设这是因为它是一个自相矛盾的函数,但是我不知道是否有任何其他方法可以存储影片剪辑是否可见。
有人可以帮忙吗?
self contradicting function
差不多。
使用调试器单步执行代码,您将看到两个 if 语句都为真。第一个启用第二个,它抵消了第一个的效果。
只需这样做:
function howToPlay(event:MouseEvent):void
{
infoBox.visible = !infoBox.visible;
}
but I'm really curious, as far as I can tell it's telling if the box is visible, then it's not visible?
是的。 !
反转布尔值。 visible
属性 被设置为一个值,该值是它自己的值但倒置了。如果是 true
,则变为 false
,反之亦然。
如果在两边都使用 属性 让您感到困惑,请先尝试使用硬编码值的一些更简单的代码:
infoBox.visible = !true;
infoBox.visible = !false;
目前正在制作一个按钮,用于打开和关闭影片剪辑的可见性。这是我的代码;
infoButton.addEventListener(MouseEvent.CLICK, howToPlay);
var boxUp:Boolean = false;
function howToPlay(event:MouseEvent):void
{
if(boxUp == false)
{
infoBox.visible = true;
boxUp = true;
}
if(boxUp == true){
infoBox.visible = false;
boxUp = false;
}
}
但是当点击按钮时没有任何反应。我假设这是因为它是一个自相矛盾的函数,但是我不知道是否有任何其他方法可以存储影片剪辑是否可见。
有人可以帮忙吗?
self contradicting function
差不多。
使用调试器单步执行代码,您将看到两个 if 语句都为真。第一个启用第二个,它抵消了第一个的效果。
只需这样做:
function howToPlay(event:MouseEvent):void
{
infoBox.visible = !infoBox.visible;
}
but I'm really curious, as far as I can tell it's telling if the box is visible, then it's not visible?
是的。 !
反转布尔值。 visible
属性 被设置为一个值,该值是它自己的值但倒置了。如果是 true
,则变为 false
,反之亦然。
如果在两边都使用 属性 让您感到困惑,请先尝试使用硬编码值的一些更简单的代码:
infoBox.visible = !true;
infoBox.visible = !false;