Halo... アクション スクリプトを使用してテキスト フィールドを作成しました。コードは次のとおりです。
var tf:TextField;
しかし、座標に配置したい場合、デフォルトの登録ポイントはテキストフィールドの左上にあります.テキストフィールドの中央に変更する方法.
ありがとう。
Halo... アクション スクリプトを使用してテキスト フィールドを作成しました。コードは次のとおりです。
var tf:TextField;
しかし、座標に配置したい場合、デフォルトの登録ポイントはテキストフィールドの左上にあります.テキストフィールドの中央に変更する方法.
ありがとう。
登録ポイントを移動したい場合は、実際にはコンテナのポイントではなく、コンテンツを移動する必要があります(これは固定されています)。これには、変換マトリックス http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/geom/Matrix.htmlを使用する必要があります。
あなたの場合、スケールなしでコンテンツを移動するだけで、次のことが必要です。
tf.transform.matrix = new Matrix(1, 0, 0, 1, leftValue, upValue);
ここでleftValue
、 とupValue
は負の数値で、テキスト フィールドのサイズの半分に相当します。したがって、テキストフィールドが移動され、コンテナの登録ポイントがテキストフィールドの中央になります。
コンテンツを動的に生成する場合、登録ポイントは常に (0,0) です。
@randunel が示唆するように行列変換を使用するか、単に「tf」の中央を見つけてそこに座標を設定することができます。
var fieldWidth=tf.textWidth;
tf.x=20+(fieldWidth/2);