- 締切済み
コンボボックスについて
コンボボックス2つを使いユーザーに誕生日の月と日を入力してもらいたいのですが,すこし疑問があります.2月には30,31日が,4,6,9,11月には31日がありません.このような月や日が選択された場合,コンボボックスのリストの内容をそれぞれ変化させたいのですが,どのようにしたらよいかわかりません.ぜひ,教えていただきたく思います.よろしくお願いいたします.
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- mach999
- ベストアンサー率75% (36/48)
回答No.1
Flashはバージョンによって文法が結構違うので,Flash ActionScriptの質問をする際はバージョンを明記することは必須条件であると考えてください。とりあえずMX 2004と仮定します。 月のコンボボックスをmm,日のコンボボックスをddとすると,mmのムービークリップイベントとして on(change){ // mmの選択内容から,選択した月の日数を取得 var m = this.getSelectedItem().data; // ddに入れる配列を生成 var a = new Array(m); for(var i=0; i<a.length; i++) a[i] = i+1; // 生成した配列をddに設定 _parent.dd.setDataProvider(a); } のように記述すると,mmの内容が変化した時にddの内容を動的に変化させることができます(MX 2004 で動作確認済み)。 ただし,mmのパラメータをコンポーネントインスペクタで labelに{1,2,3,4,...12} ←各月 dataに{31,28,31,30,...31} ←各月の日数 と設定しておいてください。 誕生日ということなので閏年は考慮していません。