Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 获取复选框以在返回到帧时保持其状态_Actionscript 3_Flash_Checkbox - Fatal编程技术网

Actionscript 3 获取复选框以在返回到帧时保持其状态

Actionscript 3 获取复选框以在返回到帧时保持其状态,actionscript-3,flash,checkbox,Actionscript 3,Flash,Checkbox,感谢您抽出时间阅读此文章 让我先说一下,我对Flash/Actionscript非常陌生,大约15年来没有做过任何编码。基本上,我的雇主要求我为客户制作一个演示文稿。此演示文稿使用复选框显示图像的不同部分(实际上是按钮)。这些按钮依次链接到其他框架,其中包含他们单击的部分的信息 到目前为止一切正常,我所有的复选框都链接到带有全选/取消全选按钮的按钮。。我正在努力让flash记住我离开“地图框”时复选框的状态 Area_1_Chk.addEventListener(Event.CHANGE, to

感谢您抽出时间阅读此文章

让我先说一下,我对Flash/Actionscript非常陌生,大约15年来没有做过任何编码。基本上,我的雇主要求我为客户制作一个演示文稿。此演示文稿使用复选框显示图像的不同部分(实际上是按钮)。这些按钮依次链接到其他框架,其中包含他们单击的部分的信息

到目前为止一切正常,我所有的复选框都链接到带有全选/取消全选按钮的按钮。。我正在努力让flash记住我离开“地图框”时复选框的状态

Area_1_Chk.addEventListener(Event.CHANGE, toggleArea_1_Btn, false, 0, true);
Area_2_Chk.addEventListener(Event.CHANGE, toggleArea_2_Btn, false, 0, true);

/* Ensures that all checkboxes begin in the off state.
*/
Area_1_Btn.visible = false
Area_2_Btn.visible = false

/* Defines the Show All Checkbox and sets states to true/false
*/

ShowAll_Chk.addEventListener(Event.CHANGE, toggleMulti, false, 0, true);
function toggleMulti(e:Event):void
{
var SAC:Boolean = e.target.selected;
if(SAC)
{
Area_1_Chk.selected = true;
Area_1_Btn.visible = true;
Area_2_Chk.selected = true;
Area_2_Btn.visible = true;
    }
else
{
Area_1_Chk.selected = false;
Area_1_Btn.visible = false;
}
}

function toggleArea_1_Btn(e:Event):void
{
Area_1_Chk.selected ? Area_1_Btn.visible = true : Area_1_Btn.visible = false;
}
function toggleArea_2_Btn(e:Event):void
{
Area_2_Chk.selected ? Area_2_Btn.visible = true : Area_2_Btn.visible = false;
}

Area_1_Btn.addEventListener(MouseEvent.CLICK, A1_ClickToGoToAndStopAtFrame);
Area_2_Btn.addEventListener(MouseEvent.CLICK, A2_ClickToGoToAndStopAtFrame);

/* Sets link to frame */

function A1_ClickToGoToAndStopAtFrame(event:MouseEvent):void
{
gotoAndStop(2);
}
function A2_ClickToGoToAndStopAtFrame(event:MouseEvent):void
{
gotoAndStop(3);
}
stop(); 

最简单的方法是将它们放在第3帧中继续存在的层上,但使它们在代码中不可见


其他选项包括拥有2个变量来保存状态,并在返回到帧时手动分配它们(可以跨帧访问变量),根本不更改帧(仅显示和隐藏项目),将它们放在舞台区域外的第3帧上,等等。

太棒了,在这种情况下我很简单,不必很漂亮。谢谢你的快速回复。不要忘了告诉其他人接受答案是否有效:)