• 締切済み

外部テキストスクロールと時計のスプリクトを同時に

FlashMXで下記の様な構成で2フレーム目にテキストスクロールと時計を置くと時計が止まったまま動かないんです。 全くの初心者なのでアクションはこちらのサイトからコピペさせて頂いたのものなので自分ではどうしていいか分かないのでどなたかご教授下さい。 ○○ 外部テキストスクロールアクション ○● 外部テキスト ○○ 時計アクション ○● 時計 時計アクション1フレーム目 this.onEnterFrame = function(){ var nDate = new Date(); var nHour = nDate.getHours(); var nMinutes = nDate.getMinutes(); var nSeconds = nDate.getSeconds(); tTime.text = ""; //テキスト内を空に // 時 if ( nHour < 10 ){ tTime.text += "0"+nHour+":"; }else{ tTime.text += nHour+":"; } // 分 if ( nMinutes < 10 ){ tTime.text += "0"+nMinutes+""; }else{ tTime.text += nMinutes+""; } 外部テキストスクロールのアクション1フレーム目 stop(); System.useCodepage = true; myLoadVars = new LoadVars(); myLoadVars.onLoad = function(Success) { if (Success) { _root.gotoAndStop(2); } }; myLoadVars.load("data.txt"); } 外部テキストスクロールのアクション2フレーム目 // marqMC の初期座標の保存 marqX = _root.marqMC._x; marqY = _root.marqMC._y; // marquee の初期横幅の保存 marqW1 = _root.marqMC._width; // marqMC に マスクmarqMask をかける _root.marqMC.setMask(_root.marqMask); // マスクmarqMask をmarqMC の初期座標にセット _root.marqMask._x = marqX; _root.marqMask._y = marqY; // マスクmarqMask の横幅を marqMC と等しくする _root.marqMask._width = marqW1; // marqMC を出発座標に移動 _root.marqMC._x += marqW1; // myLoadVars のデータを marquee.text に代入 _root.marqMC.marquee.text = _root.myLoadVars.mydata; // marquee のサイズを代入された文字長に合わせる _root.marqMC.marquee.autoSize = true; // marqMC の新しい横幅を変数化 marqW2 = _root.marqMC._width; //------marquee の移動 ------// // 1フレーム進む時間ごとに1回 { } 内を実行 _root.onEnterFrame = function() { if (_root.marqMC._x+marqW2>=marqX) { //※ここの部分↓でスピード変更 _root.marqMC._x -= 3; } else { _root.marqMC._x = marqX+marqW1; } };

みんなの回答

noname#35109
noname#35109
回答No.1

最初の 「時計アクション フレーム1」 で定義している this.onEnterFrame = function(){ と, 「marquee の移動 フレーム2」で定義している _root.onEnterFrame = function() { が,かぶっています。 同じ物に(この場合 _root)に, 同じ関数 や 同じ変数 や 同じ onEnterFrame を定義すると, 前に定義してあった物のに,あとから定義した物が上書きされて, 前にあった物は削除されます。 2つめの「marquee の移動 フレーム2」の _root.onEnterFrame = function() { を, _root.marqMC.onEnterFrame = function() { に変えてみてはいかがでしょうか。

ke-i-chi
質問者

お礼

出来ました!!初歩的な質問に回答頂きほんとにありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

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

    こちらの過去ログから下記サイトを参考に、外部テキストファイルを読み込んで表示するテキストスクロールを作成しました。 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
  • 外部のテキストを読み込んで数値として使う。

    下記のような内容のテキストファイルがあり 各行を各フレーム目のクリップのx座標y座標 に当てはめたいのです。 一フレーム目は(x,y)=10,10 5フレーム目は(x,y)=50,50 といった具合に テキスト(ppp.txt)の内容 10,10 20,20 30,30 40,40 50,50 60,60 70,70 80,80 90,90 メインのタイムラインに var load_lv:LoadVars = new LoadVars(); load_lv.load("ppp.txt"); load_lv.onData = function(s) { if (s.length > 0) { myFunction(s); } } function myFunction(s:String):Void { var lines:Array = s.split("\n"); for(i=1;i<9;i++){ var Array_1:Array = lines[i].split(","); clip_1._x = 5*Number(Array_1[0]); clip_1._y = 5*Number(Array_1[1]); } } これでは無理でした、、、 お願いします

    • ベストアンサー
    • Flash
  • 外部テキスト読み込みでマーキーしたい

    Flashのアクションスクリプトを使い、外部のテキストを読み込ませ、さらにそのテキストをmarqueeタグのように、左から右へ流れるように表示させ、それを繰り返したいです。 以下のページを参考にし、外部テキストを表示するところまでは問題なく出来ました。 http://www.mdn.co.jp/content/view/4566/111/ marqueeのようなスクロールは、ダイナミックテキストをモーショントウィーンでやりました。 ただし、読み込ませる外部テキストの文字数が毎回違います。 それにより、文字数が 1、読み込ませるテキストの文字数が毎回違うため、文字の長さによっては、文字が隠れて表示されない。 2、読み込ませるテキストの文字数が毎回違うため、文字の長さによってモーショントウィーンではうまく繰り返しのタイミングが掴めない。 ということです。 1、はダイナミックテキストで文字数がいなかる場合でもちょうどぴったりテキスト枠のサイズが指定できる方法はないでしょうか? 2、ちょうど読み込んだテキストの最後が消えた時点で、また頭から繰り返すにはどうすればよいでしょうか? 環境は、 Windows Vista Flash Pro 8 よろしくお願いいたします。

    • ベストアンサー
    • Flash
  • 外部テキストからURLを読み込む方法

    昨日、外部テキストの読み込みでお世話になったものです。 言われたとおりにやってみたところちゃんとテキストは読み込めました。 次はURLを読みこもうと思い、みなさんの質問の参考になりそうなものを手がかりにやってみたのですが、うまくいきませんでした。 テキストファイルは『flash.txt』 シンボルはMCで フレーム1のアクションスクリプトは ―――――――――――――――――― System.useCodepage = true; myLoadVars = new LoadVars(); myLoadVars.onLoad = function(Success) { if (Success) { _root.text1.text = this.menu1; _root.url1 =this.url1; } }; myLoadVars.load("flash.txt"); --------------------------------------- となっています。 これでシンボルMCに on (release) { getURL("_root.url1"); } とやっているのですが、飛びません。 また前回と同じようにこちらのミスが多いのかもしれませんが、 知っている方がいましたらよろしくお願いいたしますm(__)m

    • ベストアンサー
    • Flash
  • 外部テキストでリンク

    Flash初心者ですが宜しくお願いします FLASH MX WindouwsXP を使用しています。 作りたいボタンは 外部テキストでタイトルとURLを指定してページの真ん中にサイズ指定で開くボタンです (できれば開くサイズもテキストで指定できたほうがいいです) 以下のように作成 アクションレイヤー ボタンレイヤー テキストレイヤー を配置して アクションレイヤー stop (); System.useCodepage = true; loadVariablesNum("botan.txt", 0); myLoadVars = new LoadVars(); myLoadVars.load(LoadDataName); function centerOpen(url,Name,Width,Height) { var topC = "TP=(screen.availHeight-"+Height+")/2;"; var leftC = "LT=(screen.availWidth-"+Width+")/2;"; var features = "','top='+TP+',left='+LT+',width="+Width+",height="+Height; features += ",scrollbars=0,resizable=0');void(0);" ; var win = "window.open('"+url+"','"+Name+features; return "JavaScript:"+topC+leftC+win; } ボタンレイヤーに (ボタンインスタンス) on (release) { getURL(centerOpen("url", "blank", 800, 600), ""); } テキストレイヤー (ダイナミックテキスト) 変数(title) 外部テキストに title=<font color="#009844">リンクタイトル</font>& url=http://k2v.jp/& 反応はするんですがURLがうまく取得できません でUPしてボタンを押すと下のアドレスが表示されます http://k2v.jp/url のページが出てきます どこを変更したらいいのか自分なりに考えてみたんですが いきずまってしまいました ご教授おねがいします。

  • 【フラッシュ】外部テキストの読み込み

    よろしくお願いします。 いま、作っているフラッシュで外部テキスト(中身はサーバ名,www.~.com)を読み込んで それを参照してサーバからデータを取得するというスクリプトを作っています。 それで、めでたく完成したのですが、ローカル環境(swf,txtともにローカルマシンにある)で 確認するとうまく動くのに、サーバにアップしてみるとうまくいきません。 失敗の原因として、 1)そもそもtxtの読み込みがうまくいっていない。 2)読み込んでるが、それをswf内部でうまく参照できていない。 の二つがあると考えて、読み込んだデータを表示するテキストフィールドを用意して確認したのですが、 ちゃんと読み込んでいるのです。 すると、後はその取得データを参照するスクリプトがおかしいということになりますが、 そちらはローカル、サーバ上ともにまったく同じです。 いったい何が原因でしょう。 フラッシュの構造的には ■1フレーム目  フレームアクション:stop(); //いったん停止してデータを読み込む var theSvr;//サーバ名を格納し実際に参照する変数  配置MC:内部にsvrNameという変数を持つ、データ読み込み用のMC      onClipEvent(load){ this.loadVariables("sv.txt"); }      onClipEvent(enterFrame){ _root.theSvr = this.svrName; _root.gotoAndPlay(2);//フレームアクションのストップを解除して再生 }       ■2フレーム目以降の読み込みデータを使ったアクション  getURL(_root.theSvr);//基本的に、getURLに使う程度です。。 わかりづらいかもしれませんが、よろしくお願いします。

  • MCの色を外部テキストで制御する方法について

    ムービークリップに色をつけるときは、 ムービークリップにimg1と名前を付けて image = new Color(this.img1); image.setRGB(0xff0000); で成功します。 それを外部テキストファイルを使い色変更しようと考えましたが、うまくいかない為に質問させていただきました。 ============================== ・ムービークリップ名をimg1 ・テキストファイルread.txtに『&color1=0xff0000&』 とする 以下、asフレームです。 myLoadVars = new LoadVars(); myLoadVars.onLoad = function(Success) { if (Success) { image = new Color(this.img1); image.setRGB(color1); } }; myLoadVars.load("read.txt"); stop(); ============================== loadVariablesを使った方法も試しましたが成功しません。いろいろな言葉で検索しましたが見つからず、お手上げ状態なので、もし、分かる方がいたらお教えください。

    • ベストアンサー
    • Flash
  • 外部テキストから変数の読み込み方

    当方Flash2004MX Proなのですが、 外部テキストから変数の読み込み方が解りません。 ご回答のほど宜しくお願い致します。 ---------------------- flaのフレームアクション loadVariablesNum("sample.txt",0); trace(sampletext); ---------------------- ---------------------- 外部テキストの中身 sampletext=test ---------------------- をパブリッシュすると undefined がでます。 どのようにしたら外部テキストから 変数が読み込まれるのでしょうか。 宜しくお願い致します。

  • Suzkaでダイナミックテキストに座標を表示

    FLASH Suzkaで作成しています。 ダイナミックテキストに座標を表示させたいのですが、 下記のサイトを参考にしましたが、うまくいきません。 http://orange.2-d.jp/flash/action/20_mouse_xy_get_preview.html ↓「FLASHでの座標取得」-過去記事-教えて!goo http://oshiete1.goo.ne.jp/qa1087211.html x座標とy座標を表示させるためのダイナミックテキストと、 スプライト1を用意してこのように並んでいます。 スプライト1 x座標 y座標 スプライト1には、下記のスプリクトを記入しました。 onClipEvent (enterFrame) { _root.x=_root._xmouse; _root.y=_root._ymouse; } あと、過去記事を読むとダイナミックテキストをムービークリップにと 書いていたので、ムービークリップ=スプライト?(Suzuka)と解釈して x、y座標のダイナミックテキストを、それぞれスプライトにして試しましたが うまくいきませんでした。 Suzukaで座標をダイナミックテキストに表示する方法を 教えてください。 宜しくお願いします。

    • ベストアンサー
    • Flash
  • テキストスクロール(外部ファイル読み込み)

    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