FLASH8でアクションスクリプトをいじるとエラーが発生する件について

このQ&Aのポイント
  • FLASH8を使っている際、アクションスクリプトをいじるとエラーが発生する場合があります。
  • 具体的なエラーメッセージは『マウスイベントはボタンインスタンスでのみ使用できます』や『シンタックスエラー』などです。
  • このエラーの原因は、ボタンインスタンスでのみ使用可能なマウスイベントを他のオブジェクトに適用してしまったり、シンタックスエラーがある場合です。
回答を見る
  • ベストアンサー

テキストスクロール(外部ファイル読み込み)

FLASH8を使ってます。 FLASHを勉強中なのですが、アクションスクリプトをいじるようになるとどうしても恐々というか…成功しないでいます。 http://www.flashiroha.com/script/as5.html ↑を参考の『TextField及びスクロールボタンを作成、使用する方法』を作ってるのですがプレビューをするとエラーが出るんです。 『**エラー** シーン = シーン 1, レイヤー = レイヤー 4, フレーム = 1 :行 1:マウスイベントはボタンインスタンスでのみ使用できます。 on(press) { **エラー** シーン = シーン 1, レイヤー = レイヤー 4, フレーム = 1 :行 2:シンタックスエラー   _root.textbox.scroll--; **エラー** シーン = シーン 1, レイヤー = レイヤー 4, フレーム = 1 :行 3:シンタックスエラー   } **エラー** シーン = シーン 1, レイヤー = レイヤー 3, フレーム = 1 :行 1:シンタックスエラー   on(press) { ActionScript エラー数 :4 報告済みエラー :4』 です。 指定してあるとおりにしてるつもりなんですがどうしてエラーがでるのか、 外部ファイルを読み込めないでいるのか分かりません。 どなたか教えていただけませんか? よろしくお願いします。

  • Flash
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • suzuki-_-
  • ベストアンサー率77% (152/195)
回答No.1

> マウスイベントはボタンインスタンスでのみ使用できます ボタンアクションではなく、フレームアクションとして書いていませんか? 解決策  フレームのアクションを削除して、ボタンのアクションとして記述 > シンタックスエラー そのままコピー&ペースト等しているのか、全角の空白が混入しているようです 解決策  全ての全角空白を削除 ---URL先の内容とともにまとめると //FRAME1に タイムラインを選択した際のアクションパネルで記述 //上向きボタンに ステージ上の上向きボタンを選択した状態のアクションパネルで記述 //下向きボタンに ステージ上の下向きボタンを選択した状態のアクションパネルで記述 そして、全角空白は使用しないこと です

ryokuha52
質問者

お礼

解決できました。 ありがとうございました。

関連するQ&A

  • FLASHでムービーの再生・停止

    お世話になっています。 本を見ながら、なんとかひとつアニメを作りました。 よく見る START、REPLAYボタンをつけたくて格闘中なのですが、 何度やってもエラーが出てしまいます・・。 **エラー** シーン = シーン 1, レイヤー = ボタン, フレーム = 1 :行 1:マウスイベントはボタンインスタンスでのみ使用できます。 on(release){ **エラー** シーン = シーン 1, レイヤー = ボタン, フレーム = 1 :行 2:シンタックスエラー play(): **エラー** シーン = シーン 1, レイヤー = ボタン, フレーム = 1 :行 3:予期しない '}' があります。 } ActionScript エラー数 :3 報告済みエラー :3 >> ボタンは、ボタンインスタンスで・・・ というエラーなのですが、ボタンを作るやつ(アップ、オーバー 設定するの)で作っているし、ライブラリのシンボルの種類のところはボタンに なっていますし、何が悪いのかわかりません・・。 <F12>キーでブラウザで確認したら、問題なく制御されているのですが、エラーがあるということは 問題アリということですよね・・? すみません・・ よろしくお願いします。

    • ベストアンサー
    • Flash
  • テキストスクロールの外部テキストファイルが表示されない

    こちらの過去ログから下記サイトを参考に、外部テキストファイルを読み込んで表示するテキストスクロールを作成しました。 http://www.flashiroha.com/script/as5.html flashで保存したswfファイルでは正常に表示されるのですが、作成したHTMLファイルにswfファイルを挿入すると外部テキスト部分が表示されず、サイドのスクロールボタンのみしか見えていません。 swfファイルと同階層にtextファイルは置いています。 そして、そのswfファイルをダブルクリックすると外部テキストファイルは表示されているにもかかわらず、htmlファイルでは表示されないのです。 足りないところは、補足説明も致しますのでよろしくお願い致します。 --------------------------------------------- ■htmlファイル <div id="textbox"> <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="545" height="150" title="テキストスクロール"> <param name="movie" value="common/flash/text.swf" /> <param name="quality" value="high" /> <embed src="common/flash/text.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="545" height="150"></embed> </object> </div> ■css #textbox { width: 545px; height: 150px; margin: 10px 0; } ■flash //テキストフィールドに this.loadVariables("text.txt"); //上向きボタンに on(rollOver){ _root.onEnterFrame = function() { _root.textbox.scroll -= 1; } } on(rollOut, releaseOutside) { _root.onEnterFrame = function() { _root.textbox.scroll -= 0; } } //下向きボタンに on(rollOver){ _root.onEnterFrame = function() { _root.textbox.scroll += 1; } } on(rollOut, releaseOutside) { _root.onEnterFrame = function() { _root.textbox.scroll += 0; } }

    • ベストアンサー
    • Flash
  • 外部テキストの読み込み

    Flash lite1.1で、外部テキストの読み込みが実現できません。 text.txtファイルをswfと同じフォルダに作成し、中身を「text=あいうえお」にしました。 swfのほうでダイナミックテキストで変数を「text」にし、同じシーンのボタンに下のスクリプトを記述 しました。 // on (press) { loadVariables("text.txt",0); } // よろしくお願いします。

    • ベストアンサー
    • Flash
  • ボタンインスタンスにスクリプトを記述するやり方

    flash CS3 シーン1をループさせないで止めたいので「stop();」が上から2番目のレイヤーの1459行目のキーフレーム(最後のフレーム)に入っていて、一番上のレイヤー(1459行目の最後のフレーム)にボタンのインスタンスを配置して「もう一度みる」をクリックすると最初からFlashが見れるようにしたいと考えています。 この場合のアクションスクリプトの記述の仕方を教えてください。 使うスクリプトは on (press) { getURL("http://www.******/"); } でいいんですよね? よろしくお願い致します。

    • ベストアンサー
    • Flash
  • adobeFlashcs5.5でのプレビュー

    おはようございます。当方初心者です。 フラッシュコンテンツのwebサイトを制作しております。 が、作った動画をプレビューするとボタンが効かなくなってしまいます。効かなくなってしまうといってもマウスオーバーに一応反応しますが、激しく点滅しクリックしてもこちらの意図する動きをせず指定したフレームに飛んでくれません。 意図した通りにといってもパソコンはコード通りに動いているためこちらが間違っているのですが、、、 全て効かなくなってしまうわけではないのですが効くボタンと効かないボタンの違いを分析してみても力及ばずわかりません。 添付画像のhomeのレイヤーにいくつかボタンを作り、どのボタンもactionscriptは on(release){ gotoAndPlay(それぞれ指定するラベル) { としています。 アップ、ヒットは指定せずそのまま、オーバー、ダウンはボタンシンボル化された画像を使用しています。効くボタンも効かないボタンも同じです。 しかしプレビューではなくシンプルボタンを有効にして編集した場合には問題なく効いてくれます。 コンパイルエラーには シーン=シーン 1、レイヤー=home、フレーム=1 、行 4 ステートメントは on ハンドラ内でなくてはいけません。 シーン=シーン 1、レイヤー=home、フレーム=1 、行 1 ステートメントは on ハンドラ内でなくてはいけません。 シーン=シーン 1、レイヤー=works、フレーム=16 、行 4 ステートメントは on ハンドラ内でなくてはいけません。 と3つのエラーがでています。 こちらも関係あるのでしょうか、合わせて伺いたいです。 ご教示頂けましたら幸いです。

  • フラッシュでパブリッシュの際のエラー

    **エラー** シーン = シーン 1, レイヤー = 店外, フレーム = 34 :行 1:ステートメントは on/onClipEvent ハンドラ内でなくてはいけません。 this.stop(); ActionScript エラー数 :1 報告済みエラー :1 この意味がわかりません  初心者なのですみません

  • flash cs3のアクションスクリプトに関する質問です。

    flash cs3のアクションスクリプトに関する質問です。 ActionScript2.0を使っています。 現在ゲームを作っていますが次の場面で分からないことがあります。 3つの項目からそれぞれ1つずつ答えを選んでもらい「決定」のボタンを押すと答えによって次に再生するレイヤーを変えたいのですがうまくいきません。 具体的には 【A】【1】【あ】 【B】【2】【い】 【C】【3】【う】 【決定】 というボタンがあり、例えば【A】【1】【あ】と選んで【決定】を押すと、「レイヤーA」「レイヤー1」「レイヤーあ」が再生されるようにしたいのですが 【A】のボタンのアクションには on (release) {a=1} と書きました 上と同様にほかの【B】は{a=2}、【C】は{a=3}、【1】から【3】の項目については{b=1}のように【あ】の項目についても{c=} 【決定】のボタンのアクションには on (release) { if (a==1) {gotoAndPlay(フレーム1の名前); } ~同様にそれぞれ(a==2)以下が続きます。~ } と書きました。 シンタックスチェックでは間違いは見つかりませんでしたがシーンプレビューでは決定ボタンを押しても反応がありません。 はじめたばかりで何かが足りていないのか、根本的に間違っているのかもわからない状態です。 回答よろしくお願いします。 上記のこと以外で伝えたほうがいいことがありましたら教えてください。

  • テキストスクロール

    Flash初心者です。 http://www.flashiroha.com/script/as5.html のサイトを参考にテキストスクロールを作成したのですが、 1.ボタンを押している間ずっとテキストをスクロールさせるようにするにはどうしたらいいでしょうか?(現状ワンクリック1行のスクロールでカチカチ押さなければならない。) 2.外部読み込みのテキストで、文字の色やサイズを部分的に変えたいのですがテキストファイルにhtmlを打ち込んでも全く反映されず、そのタグ自体が画面に表示されてしまいます。どうすればいいでしょうか?

  • フレームラベルを使った複数指定について

          |1     |5   |10    |15   |20 レイヤー1 |▲*1*   |▲*2* |▲*3*   |▲*4* |▲*5* | レイヤー2 |●>--→|●--→|●>--→|●--→|●--→| レイヤー3 |●>--→|●--→|●>--→|●--→|●--→| レイヤー1にはフレームラベルが記入されています。 1フレーム目のレイヤー2のボタンは on(press){ gotoAndPlay("*1*"); gotoAndPlay("*2*"); } 1フレーム目のレイヤー3のボタンには on(press){ gotoAndPlay("*1*"); gotoAndPlay("*3*"); } としています。 こちらはきちんと正常に意図通りに動きます。 10フレーム目のレイヤー2には on(press){ gotoAndPlay("*3*"); gotoAndPlay("*4*"); } 10フレーム目のレイヤー3には on(press){ gotoAndPlay("*4*"); gotoAndPlay("*5*"); } としてみましたが、こちらは正常に動きません。 指定の仕方としては誤っているでしょうか? もし間違いでしたら正しい指定の仕方を教えてください。

    • ベストアンサー
    • Flash
  • シンボルを回転させたいのですが、うまくいきません。

    はじめまして。Flash初心者です。 Flashを使ったものをWEBサイトに取り入れたいと思いまして、 ネットでモデルとなるものを探してました。 その結果、 http://flashrave.org/as/rotation/index.html のサイトのものを作ってみたいのですが、エラーがでてしまします。 私の最終的にした事。 1,回転させたい画像を、イラストレーターに読み込み、swfで保存する。 2,Flashを開きライブラリから新規シンボルを作成。ムービークリップを選択し、ソースから1で使用したhtmlファイルを読み込んでみる。(読み込まないも試してみる) シンボルの画面から、ファイル→読み込みでswfファイルを読み込む。 画像がでる。 3,シーン1にシンボルが表示される。それを選択して サイトにあった onClipEvent (enterFrame) {  this._rotation += 1; } このソースをアクションに貼付ける。 4,保存して、動かしてみる。 5,すると以下のようなエラーが出力される **エラー** シーン = シーン 1, レイヤー = レイヤー 2, フレーム = 1 :行 2:シンタックスエラー  this._rotation += 1; **エラー** シーン = シーン 1, レイヤー = レイヤー 2, フレーム = 1 :行 3:予期しない '}' があります。 } ActionScript エラー数 :2 報告済みエラー :2 以上です。初心者なので単純なミスかもしれません。Flash8を使っています。 どなたかご教授宜しくお願い致します。

    • ベストアンサー
    • Flash

専門家に質問してみよう