私はアクション スクリプト 3 の初心者なので、この詳細な投稿をお許しください。(およびコード投稿エラー)
インタラクティブなフラッシュ プロジェクトを作成しています...17 個の個別のシーンがあります...
- イントロシーン
- 「メイン_シーケンス」
- 15 の個別のタイトル ソング ページ
イントロ->「メイン」シーケンスを問題なくスクリプト化しました....
私の問題は、「メインシーケンス」に15個のボタンがあり、それらを15個の個別のシーンにリンクする必要があることです...2つの異なるコードセットを試しましたが(下記参照)、コンパイルエラーが発生し続けました... ..これらの2つの形式のどちらが私の目的に最適であるか、正確に何が間違っているのかを教えていただければ幸いです....
コード 1:これは、個々のページをメイン シーケンスにリンクするために使用しているものを変更したものです。
TD_g.addEventListener(MouseEvent.MOUSE_DOWN,mouseDownHandler1);
function mouseDownHandler1(event:MouseEvent):void {
gotoAndStop(1,"Tweedlee_Dee");
}
s_g.addEventListener(MouseEvent.MOUSE_DOWN,mouseDownHandler2);
function mouseDownHandler2(event:MouseEvent):void {
gotoAndStop(1,"Sincerely");
}
ats_g.addEventListener(MouseEvent.MOUSE_DOWN,mouseDownHandler3);
function mouseDownHandler3(event:MouseEvent):void {
gotoAndStop(1,"Ain’_that_a_shame");
...15回繰り返しました...その 部分は、メインシーケンスの各ボタンに割り当て_g
た一意のインスタンス名を参照しています...どこかで各イベントが異なる必要があることを読んだので#
、それぞれを変更しました(?) MouseDownHandlr
..シーンをテストするたびに、次の結果が得られます...
TypeError: エラー #1009: null オブジェクト参照のプロパティまたはメソッドにアクセスできません。at music_Sheet_project_14_Main_Sequence_fla::MainTimeline/frame1( ...そして、シーンが開始され、そのアニメーションに続いてマウスオーバー効果が行われますが、クリックするとエラー(?)を返すボタンは「反応」を生成しません
...映画をテストするたびに(その短いコードだけで!)、次の結果が得られます...
14 コンパイラ エラー
すべて 1021: 関数定義が重複しています。ソース :function mouseDownHandler(event:MouseEvent):void {
..だから私は別のルートを試しました...
**Code2 **これは、最初のコードを修正しようとしたときに見つけた別のコードです。
stop();
TD_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
s_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
ats_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
iyk_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
hms_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
tf_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
hd_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
ld_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
ll_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
ts_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
ipsy_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
ysm_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
ihm_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
iss_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
tl_g.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
function mouseDownHandler(event:MouseEvent):void
{
var nameOfButton:String = event.currentTarget.name;
if (nameOfButton == "TD_g")
{
gotoAndStop(1, "Tweedlee_Dee");
}
else if (nameOfButton=="s_g")
{
gotoAndStop(1, "Sincerely");
}
else if (nameOfButton=="ats_g")
{
gotoAndStop(1, "Ain’_that_a_shame");
}
else if (nameOfButton=="iyk_g")
{
gotoAndStop(1, "I_hear_you_knocking");
}
...これは 64 行目を含めてあと 15 回続きます。
{
else if (nameOfButton=="ysm_g");
{
gotoAndStop(1, "You_shook_me");
これを実行しようとすると、次のようになります...
「1083: 構文エラー: else は予期しないものです。ソースelse if (nameOfButton=="ysm_g");
これを調べると、構文が間違っているという提案が表示されます...しかし、他のすべての行ではなく、なぜこの行が選択されるのでしょうか...再入力して再フォーマットしようとしましたが、そのエラーが発生し続けます...
*これらのコードのうち、使用するのに最適なものはどれですか? (そして、なぜ機能しないのですか???) あらゆる/すべてのアドバイスとヘルプをいただければ幸いです...ありがとう!!! *