12月 25

時間の処理には、trick7さんのTeraClockを使わせてもらいました。

キモは、

(TextArea).verticalScrollPosition = (TextArea).maxVerticalScrollPosition

だけです。

デバッグ用に、TextAreaに変数とかを表示させたいときに、スクロールバーが付いてこないと非常に見づらいので、上の1行を追加すると便利です。


Actionscript:
  1. package 
  2. {
  3.     import fl.controls.Button;
  4.     import fl.controls.TextArea;
  5.     import flash.display.MovieClip;
  6.     import flash.events.*;
  7.    
  8.     import com.trick7.utils.TeraClock
  9.     /**
  10.      * ...
  11.      * @author IRONHEARTS
  12.      */ 
  13.     public class Main extends MovieClip
  14.     {
  15.         private var _ta1:TextArea;
  16.         private var _ta2:TextArea;
  17.         private var _reset:Button;
  18.         private var _tc:TeraClock;
  19.  
  20.         public function Main():void
  21.         {
  22.             addEventListener(Event.ADDED_TO_STAGE, init);
  23.         }
  24.        
  25.         private function init(e:Event = null):void
  26.         {
  27.             removeEventListener(Event.ADDED_TO_STAGE, init);
  28.            
  29.             _ta1 = TextArea(getChildByName("ta1"));
  30.             _ta2 = TextArea(getChildByName("ta2"));
  31.             _reset = Button(getChildByName("reset"));
  32.            
  33.             _reset.addEventListener(MouseEvent.CLICK, resetHandler);
  34.            
  35.             _tc = new TeraClock;
  36.            
  37.             _tc.addEventListener(TeraClock.SECONDS_CHANGED, secListener);
  38.  
  39.         }      
  40.         private function resetHandler(e:MouseEvent):void
  41.         {
  42.             _ta1.text = _ta2.text = "";
  43.         }      
  44.         private function secListener(e:Event):void
  45.         {
  46.             var s:String = _tc.hours2 + ":" + _tc.minutes2 + ":" + _tc.seconds;
  47.            
  48.             _ta1.text += s + "\n";
  49.             _ta2.text += s + "\n";
  50.    
  51.             _ta2.verticalScrollPosition = _ta2.maxVerticalScrollPosition;
  52.         }
  53.     }
  54. }

ソース必要な人はドウゾつtascroll.fla,Main.as

Popularity: 7% [?]

written by ANN

6月 04

一つ前の[AS3.0]Yahoo ASTRA LayoutContainersを使ってフォント一覧パネルを作るに、フォントサイズを変更するためのスライダーを付け、ソース内の不要なコードを消した物を作りました。


直リンはこちら。font_pane2.swf

ドキュメントクラス(fontPane.as)と、ヘッダ部分(fontHeader.as)と、フォント一覧(fontMenu.as)と、プレビュー部分(fontRightArea.as)にて構成されているけれど、ポイントはBorderPaneを継承したドキュメントクラスなので、その部分のソースのみ掲載。(全ソースはページ最下部にてダウンロードできます)

>>>>>続きを読む

Popularity: 23% [?]

written by ANN

6月 03

Yahoo! Developer Network - Flash Developer Center - ASTRA Flash Componentsのコンポーネントって、結構便利と思うんだけれど、本家のドキュメント以外にほとんどドキュメントがない。

みんな自分でがりがり書いてるんだろうか。それともFlexだとちょちょいのポンなんだろうか。
素のFlashは、いわゆるGUIのコンテナとしての機能が低すぎると思う。

ということで、YahooのLayoutContainersを使ってなにかできないかーと考えていて、とりあえずフォント一覧を作ってみた。

フォント一覧であれば、別にYahoo LayoutContainersを使わなくても割と簡単にできるけど、Yahoo LayoutContainersを使う利点としては、

●レイアウトの変更を柔軟にできる。定番なものであれば、座標していせずとも、だいたいレイアウトできる。
●ステージの拡大縮小への対応が簡単。
●HTMLでいうところのDIVみたいな間隔で、まさにコンテナとして使える
●その他いろいろあると思うけど、また勉強中。

で、まだかなり完成度低いけど、できたのがこちら。

swf単体で開くと、リサイズにも対応してるのが分かると思います。
font_pane.swf

今回使ったのは、
・BorderPane
・HBoxPane
・VBoxPane
の3つ。

あと、フォントサイズの変更機能と、クラスのコードを整理したらソースアップしようと思う。
というか、Yahoo のコンポーネント使ってる人いないのかなぁ~

[ 追記 ]
スライダーでフォントサイズを変更できるもの+ソースを追加しました。
[AS3.0]Yahoo LayoutContainersでフォント一覧・改良&ソース

Popularity: 25% [?]

written by ANN

4月 30

ずばり、コンポーネントの初期化の話なのですが、正味、これで3日はツブしました。頭悪くて済みません。

以下のようなflaファイルがあったとします。
compcheck.png

>>>>>続きを読む

Popularity: 27% [?]

written by ANN

4月 23

最先端のFlasherの方々は、あまりステージにムービークリップやコンポーネントを配置したりしないのかもしれないが、個人的にはステージにグラフィックやボタンなどを配置することが多い。
それらをドキュメントクラスから使う場合、どうしたらいいのかわからなくてかなり悩んだ。

たとえば、以下のような画面があるとする。
as3compo.png
ステージ上にButtonとTextInputコンポーネントを配置し、それぞれ、
btn,inputtというインスタンス名とする。

ドキュメントクラスは、Main.asとする

パブリッシュ設定から、「ステージのインスタンスを自動宣言」をチェックしている場合(デフォルトでON)、ステージに配置したムービークリップおよびコンポーネントは、パブリッシュする際に自動的にオブジェクトのインスタンスが生成される。

Flashでは、ムービークリップシンボル、ボタンシンボル、またはテキストフィールドをステージに配置し、プロパティインスペクタでインスタンス名を割り当てた場合、自動的にそのインスタンス名で変数が宣言され、オブジェクトインスタンスが作成され、そのオブジェクトが変数に格納されます。

この場合、class Mainにおいて、btn,inputに直接アクセスできる。サンプルソースはこちら

>>>>>続きを読む

Popularity: 34% [?]

written by ANN

3月 28

FlashのDataGridという、いわゆる「表組み」のインターフェースをもつコンポーネントがあるのだが、そのままでは、文字以外を入れ込むことができない。

そこで、PhilFlash - HtmlCellRendererを利用させてもらい、サンプルを作ってみた。

>>>>>続きを読む

Popularity: 17% [?]

written by ANN