2013年6月アーカイブ

icon_smoking_mcというMCをクリックすると、これがフレーム2になり、
map2_mc.smoking01を0.3秒ごとに1フレーム2フレームきりかえ
5回点滅で完了という動き。

icon_smoking_mc.addEventListener(MouseEvent.CLICK,pointSmoking);
function pointSmoking(e:MouseEvent){
var c_smoking = 1;
icon_smoking_mc.gotoAndStop(2);
var setIDName:Number = setTimeout(sample, 300);
function sample():void {
if(c_smoking < 10){
c_smoking += 1;
map2_mc.smoking01.gotoAndStop(c_smoking%2+1);
clearTimeout(setIDName);
setIDName = setTimeout(sample, 300);
}else{
icon_smoking_mc.gotoAndStop(1);
map2_mc.smoking01.gotoAndStop(1);
}
}
}

DBのデータをFPDF使って、PDFで表の形にする、という作業をしていてハマッたので。
MultiCellで自動改行されるけど、見だし部分はCellにするので、MultiCellの行数を数えて、行数設定をしてあげなければならなかった。

1)文字列の改行(PHP_EOL)でぶった切った配列を作り
2)配列要素を50字換算で何行あるか数え、たして行く。
って流れで考えて、mb_strlenで50字を計算してたけど、半角文字数がまざるとぐちゃぐちゃ。

調べたらmb_strwidthって関数があるのね。
これは全角2文字、半角1文字で、幅で計算してくれるっぽい。
なので、これで100字換算で何行か、というコードに変更。
これで問題なく計算できました。