ProgressBarとRadioButtonとかとか

では引き続き行ってみましょう

 先月中に全部使ってみるという話だったけど、ちょっと越えてるとゆー。
 とりあえず使ってみただけ、という状態だけど、とにかく終わらせてみた。

 Σc ' _' )  < 最初宣言した時は、余裕あると思ってたくせにな
 $ σ_σ$  < DSでシレンとかやってるからよ

fl.controls.ProgressBar

  • fl.controls.ProgressBar - Adobe Flash Professional CS5 用 ActionScript 3.0 リファレンスガイド (ActionScript 3.0)
  • Adobe Flash Professional CS5 * ProgressBar コンポーネントの使用
  • Adobe Flash Professional CS5 * ProgressBar コンポーネントのカスタマイズ
  •  ProgressBarにはmodeってのがあって、ProgressBarModeEVENTPOLLEDMANUALが選べる。

     EVENTモードのProgressBarsourceプロパティには、progresscompleteイベントを持っているオブジェクトを指定すれば、プログレスバーが自動的に進んで止まるようだ。

     POLLEDモードの場合は、bytesLoadedbytesTotalを持っているオブジェクトを指定すればいい。
     どうも大抵は上記のイベントも持っているみたいだから、EVENTモードでやれば良さそう。
     sourceに何も指定してないといわゆるバーバーポール(床屋の看板状の棒)になる。

     んで、MANUALモードだと進捗状況を全部自前で設定するということのようだ。
     では、これをやってみる。
     ステージにMANUALモードでProgressBarを表示して、フレームスクリプトに以下のコードを書く。

    var currentIndex:Number = 0;
    
    addEventListener( Event.ENTER_FRAME, enterFrameHandler );
    
    function enterFrameHandler( e:Event ):void
    {
    	progressBar.setProgress( currentIndex, 100 );
    	currentIndex++;
    	
    	if ( 100 < currentIndex )
    	{
    		currentIndex = 0;
    	}
    }

     setProgress()じゃなくて、minimummaximumvalueを使ってもプログレスバーを進める事ができる。

     えーと、成果。鳶嶋工房 / User Interface / Terms / プログレスバー

    fl.controls.RadioButton

  • fl.controls.RadioButton - Adobe Flash Professional CS5 用 ActionScript 3.0 リファレンスガイド (ActionScript 3.0)
  • Adobe Flash Professional CS5 * RadioButton コンポーネントの使用
  • Adobe Flash Professional CS5 * RadioButton コンポーネントのカスタマイズ
  •  …これ、グループじゃないのかっ!
     ラジオボタンは常に複数のグループで使われるし、値もグループでひとつしかとらないのに…ActionScript3コンポーネントはラジオボタンを一個一個置いて、値をとる時はグループになっているのを全部スキャンするか、CLICKハンドラでいちいち記録する必要があるっぽい。
     うーん、とってもいやな感じ。

     と思ったら、groupってプロパティがあって、そこにfl.controls.RadioButtonGroupってのが入っている。
     こっちの方でselectedDataの値をとってやればいいらしい。うーむちと使いづらい。グループ内での位置とかデフォルトでいい感じに並べてくれればいいのに。

     えちご成果。鳶嶋工房 / User Interface / Terms / ラジオボタン

     Σc ' _' )  < 投げやり感が見え隠れしております
    

    fl.controls.ScrollPane

  • fl.containers.ScrollPane - Adobe Flash Professional CS5 用 ActionScript 3.0 リファレンスガイド (ActionScript 3.0)
  • Adobe Flash Professional CS5 * ScrollPane コンポーネントの使用
  • Adobe Flash Professional CS5 * ScrollPane コンポーネントのカスタマイズ
  •  sourceにはクラス名を設定したライブラリのシンボルも指定できる。シンボルの座標( 0, 0 )がスクロール範囲の左上になるので、画像の中央が( 0, 0 )になっているようなものだと左側と上側はスクロールしても見れないので注意。
     ファイルの読み込みもできて、先の ProgressBarsourceに指定する事もできる。
     画像を表示したいというだけの目的には結構性能いい感じ、

    fl.controls.Slider

  • fl.controls.Slider - Adobe Flash Professional CS5 用 ActionScript 3.0 リファレンスガイド (ActionScript 3.0)
  • Adobe Flash Professional CS5 * ScrollPane コンポーネントの使用
  • Adobe Flash Professional CS5 * Slider コンポーネントのカスタマイズ
  •  まーこれは、着色してみるで使ったので良し。
     しかし、めちゃめちゃスライダサムがドラッグしにくい。そのうちカスタマイズしよう。

     作り直しただけだけど成果。鳶嶋工房 / User Interface / Terms / スライダ

    fl.controls.TextArea

  • fl.controls.TextArea - Adobe Flash Professional CS5 用 ActionScript 3.0 リファレンスガイド (ActionScript 3.0)
  • Adobe Flash Professional CS5 * TextArea コンポーネントの使用
  • Adobe Flash Professional CS5 * TextArea コンポーネントのカスタマイズ
  •  まぁ…これ、なんでコンポーネントを使うのか謎っぽいですよね。
     スクロールバーが付くのがTextFieldとは違うところ。
     使い方と言っても置くだけですわな、基本的に。

    fl.controls.TextInput

  • fl.controls.TextInput - Adobe Flash Professional CS5 用 ActionScript 3.0 リファレンスガイド (ActionScript 3.0)
  • Adobe Flash Professional CS5 * TextInput コンポーネントの使用
  • Adobe Flash Professional CS5 * TextInput コンポーネントのカスタマイズ
  •  TextAreaと何が違うのかと言うと、これは一行だけ。プロパティの設定だけで良さそうな気もするんだが、あえて別に分けるメリットは…retrunキーの判定とか、意外に細かいところ違うから、無くはないかな。

    fl.controls.UILoader

  • fl.containers.UILoader - Adobe Flash Professional CS5 用 ActionScript 3.0 リファレンスガイド (ActionScript 3.0)
  • Adobe Flash Professional CS5 * UILoader コンポーネントの使用
  • Adobe Flash Professional CS5 * UILoader コンポーネントのカスタマイズ
  •  これ何かって言うとflash.display.Loaderを使うのが面倒くさいから、コンポーネントにしたもの。
     良くある、サムネイルを外部の画像ファイルから読み込んで表示、なんてのにはこれ使っとけばOKな感じ。確かに楽。

    fl.controls.UIScrollBar

  • fl.controls.UIScrollBar - Adobe Flash Professional CS5 用 ActionScript 3.0 リファレンスガイド (ActionScript 3.0)
  • Adobe Flash Professional CS5 * UIScrollBar コンポーネントの使用
  • Adobe Flash Professional CS5 * UIScrollBar コンポーネントのカスタマイズ
  •  TextAreaがあるので、かなり立ち位置が怪しくなっているコンポーネントだけど、スクロールバーを持っているコンポーネントは、このコンポーネントを部品(◆─)として使っているらしい。

    ちょっとはみ出しつつ

     最後は駆け足でほとんどステージに置いただけみたいな使い方だけど、一応使ってみた。
     次回からは、折角覚えたコンポーネントなので、こいつらを使ってゲームを作る。

     今日はここまで。


    2011-03-02