Flex ヘルプの勉強「Flex プログラミング要素」

Flex SDK 3.5(最新バージョン)は、以下のサイトからダウンロードできる。(無償)
http://www.adobe.com/cfusion/entitlement/index.cfm?e=flex3sdk
Adobe Flex 3.5 SDK
All platforms, English | 120 MB
[Download now]ボタンを押すだけ!他のチェックや質問には答える必要はない。
最低これだけあれば、開発できる。


mxmlc コマンドを使ったコンパイルの実行結果
>cd "C:\Program Files\Adobe\Flex Builder 3 Plug-in\sdks\3.4.0\bin"
>mxmlc "C:\work\hello.mxml"
設定ファイル "C:\Program Files\Adobe\Flex Builder 3 Plug-in\sdks\3.4.0\frameworks\flex-config.xml" をロードしています
C:\Program Files\work\flex\hello.swf (182249 bytes)
>
※たかだか5行ほどのmxmlファイルのコンパイルに、結構時間がかかった。(20秒くらい!?)


◆SWF ファイルの実行方法 (※MXML の SWF ファイルへのコンパイル 参照)
Webサーバ、またはアプリケーションサーバにデプロイして、HTTPリクエストしろと書いてあるが、swfファイルをダブルクリックすると、Flash Player (最新は、Flash Player 9)で起動する。また、ブラウザにドラッグ&ドロップしても実行結果を見ることができる。
ブラウザにドラッグ&ドロップした場合のアドレスは、拡張子がhtmlではなく、swfになる。(当たり前か)
例:C:\work\hello.swf


◆List と Panel のサンプルで急に出てくる Panel コントロールの paddingTop や paddingLeft などのプロパティ は、x や y プロパティとどう違うのか!?paddingTop と paddingLeft は、x と y で代用できそうだけど。。。


ユーザーインターフェイスコントロールの追加 の サンプルプログラムで、ボタンを押したら、TextInputの入力値を空にするロジックは、6行目あたりの「// event handler code here」に「myText = "";」を書けばよい。(※ユーザーインターフェイスコントロールの追加 参照)
※ボタンを押すと"Hello World"を表示するサンプルも参考になる。(※MXML を使用したランタイムコードのトリガ 参照)


◆「このコードをコンパイルすると、myText という名前のパブリック変数が自動生成され、その中に TextInput インスタンスへの参照が格納されます。」の意味 (※MXML タグの id プロパティの使用 参照)
ActionScriptで書くと。。。
public var myText:TextInput = new TextInput();


◆trace()メソッドは、javaで言うとSystem.out.print();(※MXML タグの id プロパティの使用 参照)
eclipseでは「コンソール」、tomcatでは「tomcatプロンプト」に出力する。
javaScriptのalert();に該当するのは、Alert.show();


◆SWF ファイルと SWC ファイルは別ものなので注意!(※XML 名前空間の使用 参照)


◆「コンポーネント間でのデータのバインディング」のサンプルは、上の方の TextInput に直接文字列を入力するだけで、TextArea も同じ文字列が表示される。


を使う方法(※コンポーネント間でのデータのバインディング 参照)









◆RPC サービスの使用のサンプルを動かすためには、LiveCycle Data Services ES2 または、BlazeDS が必要。(※RPC サービスの使用 参照)


タグは、HTMLのhiddenのようなもの!?


◆「データの検証」 のサンプルのタグ(7行分)は不要。Vlidatorには何も影響はない。(※データの検証 参照)


◆「データの検証」 のサンプルは、上からPhoneNumberValidator、PhoneNumberValidator、EmailValidatorが定義されていますが、もともと入力されている文字列を消すと必須入力エラーが表示されます。どうしてでしょう。(※データの検証 参照)


◆「データの検証」 のサンプルは、エラーが英語で表示されます。
エラーの文字列は予め、コントロールが定義している文字列です。
日本語環境では、エラーは日本語で表示されます。


◆「データのフォーマット」 のサンプルで、7桁の数字(日本版)に対応させるにはどうしたらよいでしょう。(※データのフォーマット 参照)


◆CSS と スキン(スキニング) の違いを調べてみよう(※スキンの使用 参照)


◆ビヘイビアとは(※エフェクトの使用 参照)
behavior. Webページなどにおいて、特定のアクション(きっかけとなる動作)で起きるオブジェクトの動作。


◆「あるタグがある ActionScript クラスに対応する場合、そのプロパティは当該クラスのプロパティおよびイベントに対応します。」の意味は?
ヒント:ファイル名は、ActionScript クラス名、コンポーネント id 値、または「application」という単語と同じにしないでください。また、mx 名前空間に含まれる MXML タグの名前と一致するファイル名を使用しないでください。 (※MXML ファイルの命名、ActionScript クラスを表すタグの使用 参照)


◆がボールドなのはなぜ!?←きっとミスだろう。(※コンポーネントプロパティの設定 参照)


◆[要注意]子タグを使用してプロパティを設定する制約(※コンポーネントプロパティの設定 参照)
子タグの名前空間の接頭辞(上の例では mx:)とコンポーネントタグの名前空間の接頭辞が一致している必要がある。


◆静的定数を使用してプロパティの値を設定する方法と、静的定数の値を使用する方法
どちらがいいという話ではないが、一般的に静的定数の値で問題ない。
コーディング規約が厳しいところなどでは、静的定数を使用するように指定されるかも。


◆[FixMe] デフォルトプロパティ の判別方法(※デフォルトプロパティの設定 参照)
「各コンポーネントのデフォルトプロパティを判別するには、『Adobe Flex リファレンスガイド』を参照してください。」って書いてあるけど、リファレンスのどこに書いてあるの?(><)


◆円記号というかバックスラッシュ!(※円記号を使用した文字のエスケープ 参照)


◆[クイズ8]バックスラッシュを表示するにはどうしたらよいでしょう。


◆[クイズ9]半角円記号(¥)を表示するにはどうしたらよいでしょう。
※3種類くらい方法があります。
ただしデフォルトフォントの場合、横線が1本のもの(半角)と2本のもの(全角)がある。


◆[FixMe]mxml に記述と表示結果のバックスラッシュの数はなぜ合わないの?
(※円記号を使用した String プロパティの設定 参照)
ソース                表示結果
          \
          \
          \\
         \\\


◆スカラとは、1つの値を持つ 1つのオブジェクトのこと(※スカラー値の配列の設定 参照)


◆「Object プロパティの設定」で説明していることは、「コンポーネントプロパティの設定」で最初に説明していたこととあまり変わりない。


◆匿名オブジェクトとは、あらかじめ明示的に特定の型を定義せず、オブジェクト型にしておく方法