ActionScript 3 Cookbookからの抜粋(五)


1、BitmapDataとbitmapの関係
addChild()メソッドで追加するオブジェクトはflashでなければなりません.display.DisplayObjectのサブクラスのみで、BitmapDataクラスはObjectから継承されるため、リストに直接追加することはできません.
可視化オブジェクトのリストに追加するにはflashを使用します.display.Bitmapクラス、DisplayObjectです.クラスのサブクラスは、実際にはBitmapDataのパッケージクラスであり、BitmapDataを表示できるようにします.
Bitmapコンストラクション関数でインスタンスを作成するときにBitmapDataリファレンスをパラメータとして渡し、addChild()を呼び出してBitmapを表示リストに追加します.
次のようになります.
var bitmap:BitmapData = new BitmapData(100, 100, true, 0xffff0000);var image:Bitmap = new Bitmap(bitmap);addChild(image);
========================================================================
 
2、現在の映画の高さと幅を取得する
stage.stageWidth,stage.stageHeight
========================================================================
 
3、テキストボックス
//     ,              ,     
field.background=true;
field.backgroundColor=0xff0000;

//    
field.border = true;
field.borderColor=rgb;

//    ,        : dynamic  input,   dynamic
field.type = TextFieldType.INPUT;

//  
field.displayAsPassword = true;

//    ,  restrict  ,restrict                 ,                
// :
field.restrict = "a-zA-Z"; //         
field.restrict = "a-zA-Z "; //            
field.restrict = "0-9"; //      

//              :
field.restrict = "^abcdefg"; //   a  g    
field.restrict = "^a-z"; //          
field.restrict = "0-9^5"; //     5     

//    ,   (\\)    :
field.restrict = "0-9\\-"; //        
field.restrict = "0-9\\^"; //     ^
field.restrict = "0-9\\\\"; //         

//    
field.maxChars = 6

//    ,condenseWhite     htmlText       。
field.condenseWhite = true;

//    
stage.focus = field;

//      
field.setSelection(start,end)
//         , start end      

 
=======================================================================
 
4、CSSを使用してテキストをフォーマットする:テキストボックスがHTMLでレンダリングされた場合にのみCSSを適用する
cssのASにおける対応参照テーブル
css
ActionScript
説明
color
color
16進数#rrggbb
display
display
テキストの表示方法:inline,block,none
font-family
fontFamily
フォントの種類
font-size
fontSize
フォントサイズ
font-style
fontStyle
normalまたはitalic
font-weight
fontWeight
normalまたはbold
kerning
kerning
trueまたはfalse、埋め込みフォントのみ有効
margin-left
marginLeft
左余白
margin-right
marginRight
右余白
text-align
textAlign
位置合わせ:left,center,right,justify
text-decoration
textDecoration
none,underline
text-indent
textIndent
インデント
 
使用例1:
var sampleStyle:Object = new Object( );sampleStyle.color = "#FFFFFF";sampleStyle.textAlign = "center";
field.setStyle(".sample", sampleStyle);
 
使用例2:CSSファイルまたはスタイル
一、
var css:StyleSheet = new StyleSheet( );css.parseCSS("a {color: #0000FF;} a:hover {text-decoration: underline;}");field.styleSheet = css;field.html = true;field.htmlText = "Website";
 
二、
var css:StyleSheet = new StyleSheet( );css.parseCSS(URLLoader(event.target).data);
field.styleSheet = css;
========================================================================
 
5、埋め込みフォントの使用
[Embed]メタデータでフォントを埋め込み、テキストボックスのembedFontsプロパティをtrueに設定し、ラベル、次のようになります.
//外部フォントを埋め込む
[Embed(source="C:\Windows\Fonts\Example.ttf",fontName="ExampleFont",mimeType="application/x-font-truetype")]
//埋め込みシステムフォント
[Embed(systemFont="Times New Roman",fontName="Times New Roman",mimeType="application/x-font-truetype")]
 
field.embedFonts = true;
 
//テキストボックスへの使用
一、formatTextの使用
formatter.font = "Times New Roman";
field.htmlText = "Example";
二、CSSの使用
var css:StyleSheet = new StyleSheet( );css.setStyle("p", {fontFamily: "Times New Roman"});field.htmlText = "

Example

";
=======================================================================
 
6、テキストボックスが入力状態に応答しない
テキストボックス入力イベントのリスニング(TextEvent.TEXT_INPUT)
event.preventDefault( );