- ベストアンサー
外部ファイルでテキスト、リンク先URLを指定したボタン
- FLASH MX WindowsXPを使用している場合、外部ファイルでテキストとURLを読み込んだリンクボタンを作成しようとしていますが、URLが正しく読み込まれません。
- ボタンの構成は、ボタンインスタンス、ムービークリップインスタンス、ダイナミックテキストの順です。ダイナミックテキストは正常に表示されています。
- ムービークリップには正常にActionScriptが記述されていますが、ボタンのリンクだけが作動しません。解決策として、loadVariablesNum関数をシンボル内に記述することを試してみても解決できませんでした。他のURL設定方法も知りたいです。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
ちょっと今時間がないので手短になってしまいますが。 loadVariablesNum("topmenu26.txt", 0); これで _level0 (_root) に 「topmenu26.txt」 が読みこまれます。 ですから,ムービークリップに入れたボタンの場合, 「topmenu26.txt」 の中のデータが url1=○○.html&target=_blank というものであったとしたら, on (release) { getURL(_root.url1, _root.target); } で,一応はうまく行くと思います。 ターゲットパスに気を付けてください。 「ターゲットパス」 http://homepage3.nifty.com/ginga-b/MX/targetpath.html =============================== あと,テキストの表示部分ですが, ローカルPCでは, LoadDataName = "topmenu26.txt"; loadVariables(LoadDataName, ""); _root.mm1.text = menu1; これでうまく行くかもしれませんが, アップすると,おそらくうまく行きませんよ。 2行目 loadVariables(LoadDataName, ""); の意味がよくわかりませんが, その件は別問題ですから良しとして, ロードが完了してから, _root.mm1.text = menu1; をしないと,普通はうまく行きません。 こういうこと (ロード→即実行) をするときは,loadVariables でごり押しに押し切る方法もありますが, loadVariables ではなく LoadVars クラスのメソッドを使った方が良いです。 以下は _root のフレームなどに書くスクリプトです。 ------------------------------------------- // 変数LoadDataName の定義 LoadDataName = "topmenu26.txt"; //------読み込み待ち処理------// // LoadVarsクラスのインスタンスを作成 myLoadVars = new LoadVars(); // LoadVars.onLoadを定義 myLoadVars.onLoad = function(Success) { //読み込みが成功したら if (Success) { // mm1.text に menu1を表示 _root.mm1.text = this.menu1; } }; //------読み込み------// // myLoadVars に topmenu26.txt をロード myLoadVars.load(LoadDataName); ------------------------------------------- すみません。 時間の都合により検証していません。 だいたい上のような感じにする方が良いと思います。 この辺を参考にしてみてください。 「LoadVarsオブジェクトを使った外部テキストファイルの読込み」 http://www.fumiononaka.com/TechNotes/Flash/FN0303007.html
お礼
回答ありがとうございます。 早速参考にして勉強させていただきます。