ActionScript 誰かが物凄い勢いで解答するスレ 9
>>951 埋め込むのを第一水準に限定すると、1M切るよ。
埋め込みってフォントの二次使用にあたるかもしれないので
使用可かちゃんと調べておいた方が良いなり
954 :
948:2005/12/14(水) 15:21:19 ID:pyG/vNKm
>>952 だいぶちっこくなりましたー
このくらいなら上々。
ありがとうございます
>>953 ああ・・言われてみればそうですね
場合によっては使うフォントのライセンス調べないとまずそうですね
ここで聞くべきか、聞くべきじゃないのかイマイチなんだけど・・・。
AS特化したIRCチャンネルってある?
ASというかFlash系の会話に特化した って感じだ・・・。
winXP FlashPro8評価版
flash lite 1.1 ActionScriptで
テキスト入力された文字数を拾いたくて
(「あいうえお」と入力したら「5」と返して欲しい)
テキスト入力エリアに変数名honbunと付けました。
mojisu = _root.honbun.length;
trace( "文字数 = "+ mojisu );
で文字数が拾えるはずなんですが、0としか返って来ません。
("文字数 = "も表示されない)
入力エリアには「あいう」と入れてるんですが……
変数mojisuがおかしいらしい、というのは分かったんですが、
何がおかしいのか分かりません。
誰か助けて。
もしやもしやもしや!
gotoAndPlay();とgotoAndStop();って、呼び出したフレーム自身には飛べない!?
あと、この関数呼び出しても、そこでそのフレームの処理が終わるんじゃなくて、
普通にスルーされて最後まで処理しちゃうっぽいんだけど、これって仕様?
>>958 traceしてるのに"文字数 = "すら表示されないってことは、根本的に
コードがそこを通ってないんじゃないかな。
mojisuに代入している行の前に、trace("ok!");のような、そこを通ってさえいれば
確実に表示されるのを書いて、通ってるかどうかをまず確認すべきかと。
>>959 その状態がちょっとわからないんだけど、フレーム系のトラブルはよくあるなあ。
最近気づいたんだけど、MCの1フレーム目に stop(); があるだけで色々受け付けなくなるのね。
>959
レスthx
何でmojisuがおかしいと思ったかって言うと
trace( "文字数 = "+ mojisu );
から + mojisu を削除すると、"文字数 = "が
ちゃんと表示されるからなんです。
で、今>959さんが言うように trace("ok!")を最初に入れてみたけど
こちらはきちんと表示されましたが
"文字数 = " + mojisu は相変わらず 0 を返すだけでした。
プログラミングのド初心者なので、基本的な間違いを犯してるのかもしれません。
が、自分じゃどこがおかしいのか全然さっぱりです。
>>959 確か飛べなかったと思う
後半のは何をしてるのかよく分からん・・・
>>961 自分とは使ってるツールが使うので自信はないが・・・
0って返ってきてるってことはtrace自体は実行されてるはず
_root.honbun.lengthというのは_rootがついてるってことは
もしかしてMC内部でやってるとか?それでmojisuが数字になってないとか
でもそれじゃ"文字数 = "が出ない理由が分からん・・・
気になるのは「=」""で囲んでるから問題ないとは思うんだが「:」とかに変えて試してみては?
後はどこかケアレスミスがないかもう一度チェック
mojisuはどこにあるんだろ。
_root? this?
964 :
958:2005/12/16(金) 11:34:51 ID:3vkx8bDy
レスありがとうございます。
>962
= は一応 → や … で試してみましたが、うまくいきませんでした。
>963
パスの事はよく分かってないんですが、多分_rootだと。
パスが違うんじゃ、と思って _root.honbun.length と honbun.length
両方traceしてみましたが、今度は0すら返ってきませんでした
(改行されるだけ)
.length を削るとどちらも「あいう」と返ってきたので、どうやら
.length の記述のしかたが間違ってるっぽいです。
MX版のAS辞典には honbun.length という記述で動くような事が書いてありますが
flash lite 1.1だとこのあたりの仕様が違うんですかね。
lite 1.1のガイドラインに .length() はストリングス関数って書いてあるんですが
これってただ 変数名.length にするだけでは使えないって事なんでしょうか。
enterframeでやってないだけじゃないの?
966 :
958:2005/12/16(金) 13:30:24 ID:3vkx8bDy
>965
enterframe ってイベントハンドラのですよね?
lite 1.1ではイベントハンドラは使えないみたいです。
>>966 じゃあhonbun.length()・・・かな?
後はtemp = "文字数 = "+mojisuって別の変数に入れて
trace(temp)これでできない?
trace側かlength側かどっちかおかしいのかlite使ってないからさっぱりだ・・・
968 :
958:2005/12/16(金) 14:28:51 ID:3vkx8bDy
>967
何度もありがとうございます。
しかしどちらの方法でもダメでした。
honbun.length() は flash5形式でパブリッシュしないとダメなようで、
trace( temp ) の方は最初と変わらず 0 だけ返ってきました。
lite は flash4 の発展形らしいんですが、4はMXなんかとは
記述の仕方が違うんですかね。
自分でもいろいろいじってみてるんですが、何が悪いんだか…
質問させていただきます。
ABCDEと五つのムービーをつなげるとき、
Aを最低2回、n回繰り返した後Bに続き、
Bが終わったらCへ。
Cも最低2回、n回繰り返したらDかEのどちらかへランダムで
移動する、といったムービーを作りたいのですが、
AとCを別々に二個用意して
A1→A2
A2の最後のフレームで
Math.floor(Math.random()*2);
switch(i){
case 0:gotoAndPlay("A2", +i);break;
case 1:gotoAndPlay("B", +i);break;
}
というふうにやるしかないでしょうか?
できれば、AもCも別々にしないで、
一回目は1フレーム目にもどり、二回目以降に
ランダム発動、みたいにしたいのですが・・・
あ、と連続ですみません。
Flash MX2004を使っています。
>>958 length(honbun)
はどうだろうか?
>971
おおお! 出来ました!
lengthって全角半角関係なく文字数を数えるはずなのに
何故か全角文字が半角扱い(一文字で2カウント)になってしまってますが、
これは拾った数値を /2 すれば解決しますね。
>971さんはじめ、教えてくださった皆さん
本当にありがとうございました!
>>969 管理用のムービー作ってそれに読み込ませれば?
流れもそいつに管理させる。
974 :
959:2005/12/16(金) 20:14:37 ID:guxuZ7tN
>>962 if (a == b){
gotoAndPlay("nurupo");
}
str = b.split(";");
こういう感じのコードですね。a == bの条件を満たしたらgotoAndPlay()で飛ばして終わり、
と思ってたら、そこですぐさま飛ぶわけじゃないっぽいので、split作業までやっちゃうみたいなんですよね。
returnもそういう仕様っぽいですが、C++から入ってきた俺は、なんじゃこれと思ったわけです。
>>974 >すぐさま飛ぶ
あーそれは俺もひっかかったな。言語的な特徴だしこういうものなんだって思うしかないよ
でも飛ぶ時に必要ない処理ならelseでくくっちゃえば良いし
頑張って慣れてください
>>974 returnは、関数内なら処理を打ち切れるよ。
number = Math.floor(Math.random()*4)+2;
gotoAndStop(number);
でランダムに2〜5のフレームに飛んでそこで外部JPGを読み込もうとして各フレームに
loadMovie("1.jpg",_root.image)
で読み込んだんですがhtmlで表示したらファイルが上手く表示されません。んで
HAKUHIN's FLASH講座 ASサンプル集を見たらhtmlとswfが別のディレクトリに
ある時にswfを表示しようとするとうまく読み込めないことがあります、とのこと。
なので<embed>タグにbaseを追加して、相対パスの元のディレクトリをswfファイル
のある位置を指定したんですがそれでも上手くいかないんですが何が悪いんで
しょうか。
当方MX2004使用です。
980 :
Now_loading...774KB:2005/12/17(土) 16:53:36 ID:R7p9NVo9
>974
C++からはいってきたのに、gotoなんて使うなよwww
981 :
Now_loading...774KB:2005/12/17(土) 17:14:03 ID:WR5rDTqY
当方XP HOME Editionで使用flashはMXです
外部テキストを読み込むスクリプト
onClipEvent (load) {
System.useCodepage = true;
this.loadVariables("news.txt");
}
を実行したのですが、外部テキストが表示されません
外部テキストの最初にcontent=も入っているし、スクリプトもエラーはないみたいなんです。
外部テキストとフラッシュも同じ場所にいれてあります。
お願い、教えてください(泣)
>>981 パス間違ってるんじゃない?
そのMCに読み込んでるならMC.contentに入るわけだけど
_root.contentとかにしてない?
>>982 ターゲットパスのことですか?ターゲットは、ムービークリップで相対でthisになってます
間違ってたらすいません。
読み込んだだけで表示してないのでは?
trace(content);とかやってみ。
>>984 駄目みたいです。出力には、「テキスト」とのみ表示されます。
再インストールしたほうがいいんでしょうか?
ファイルに
content=テキスト
って書いてあればテキストと表示されて当然でしょ
>>986 とりあえず、テキスト欄に「テキスト」と入力しておいたんです。
簡単にコピペしたほうが早いですね。変な質問してすいませんでした
■■■■■■■■■■■■■■■■■■■■■□■■■■
■■■□■■■■■■■■■□□□■■□□□□□□■■
■■■□■■■■■■■■■■■■■■■■■□■■■■
■□□□□□■□□□□□■□□□■■□□□□□□■■
■■■□■□■□■■■□■■□■■■□■■□■□■■
■■■□■□■□■■■□■■■□■■□□□□□□■■
■■■□■□■□■■■□■■□■■■■□■□■□■■
■■□■■□■□□□□□■■■□□□□□□□□□□■
■■■■■■■■■■■■■■■■■■■■■■■■■■
990 :
名前は開発中のものです。:2005/12/17(土) 21:34:33 ID:Lg1+ulIU
ksk
1000とったらなにしよう?
つ就職
んなこたーない
なんじゃそりゃ
999GET
1000
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。