ユーザーが選択できるさまざまなボタンを備えたフォームがあります。ボタンが選択されたかどうかに応じて、「はい」または「いいえ」の値を保持するためのメイン タイムラインの各ボタンに、変数が既に設定されています。それらはすべて「いいえ」から始まります。
各ボタンの配列は次のとおりです。
tabs_array = ["familiars","tallers2","gestions","sortides","tallers1","medic","podoleg","dutxes","menjador"];
ボタンが選択されているかどうかの初期変数は次のとおりです。
var send_dutxes:String="no";
var send_gestions:String="no";
var send_medic:String="no";
var send_menjador:String="no";
var send_podoleg:String="no";
var send_sortides:String="no";
var send_tallers1:String="no";
var send_tallers2:String="no";
var send_familiars:String="no";
各ボタンのコードは次のとおりです。
for(var a=0; a<tabs_array.length; a++){
this.popup_contact[tabs_array[a]].gotoAndStop("off");
this.popup_contact[tabs_array[a]].addEventListener(MouseEvent.MOUSE_OVER, act_over);
this.popup_contact[tabs_array[a]].addEventListener(MouseEvent.MOUSE_OUT, act_out);
this.popup_contact[tabs_array[a]].addEventListener(MouseEvent.CLICK, toggleAct);
this.popup_contact[tabs_array[a]].buttonMode = true;
}
問題が発生している場所 (クリック状態) のコードは次のとおりです...ユーザーが選択のいずれかをクリックしたとき:
function toggleAct(event:MouseEvent):void
{
if (this("send_"+event.currentTarget.name)=="no")
{
event.currentTarget.gotoAndStop("on");
trace("changing no to yes");
this("send_"+event.currentTarget.name) = "yes";
}
else if (this("send_"+event.currentTarget.name)=="yes")
{
event.currentTarget.gotoAndStop("off");
this("send_"+event.currentTarget.name) = "no";
trace("changing yes to no");
}
}
基本的に、クリックされた mc 名を対応する変数に接続する方法を知る必要があります....文字列を変数名に変更します。