Actionscript 3 如何在MovieClip(AS3)中居中文本字段
我在定位的时候遇到了奇怪的问题 1) 我用AS创建的MovieClip() 2) 此MovieClip()中的文本字段 问题1):当我设置MC.x=0时;MC.y=0电影剪辑不会出现在左上角 问题2):文本既没有垂直居中,也没有水平居中 我的AS3代码:Actionscript 3 如何在MovieClip(AS3)中居中文本字段,actionscript-3,flash,movieclip,Actionscript 3,Flash,Movieclip,我在定位的时候遇到了奇怪的问题 1) 我用AS创建的MovieClip() 2) 此MovieClip()中的文本字段 问题1):当我设置MC.x=0时;MC.y=0电影剪辑不会出现在左上角 问题2):文本既没有垂直居中,也没有水平居中 我的AS3代码: var button:ButtonMC = new ButtonMC(); button.y = 100; button.x = 100; button.width = 260; button.height = 50; button.butt
var button:ButtonMC = new ButtonMC();
button.y = 100;
button.x = 100;
button.width = 260;
button.height = 50;
button.buttonMode = true;
button.useHandCursor = true;
button.mouseChildren = false;
var tf:TextFormat = new TextFormat();
tf.size = 70;
tf.bold = true;
tf.font = "Arial"
tf.color = 0xFFFFFF;
var myText:TextField = new TextField();
myText.defaultTextFormat = tf;
myText.autoSize = TextFieldAutoSize.CENTER;
button.addChild(myText);
myText.text = 'ThisIsATestText1234';
myText.y = button.height * 0.5 - myText.textHeight * 0.5;
addChild(button);
由于myText已经添加到按钮中,您尝试获取按钮高度的位置可能会导致计算出错。首先尝试对齐文本字段,然后将其添加到按钮中。 您也在更改按钮的宽度和高度,这会更改比例,因此也会影响内部文本字段的外观和行为(因为它将成为按钮的子项) 同时解决这两个问题的最佳方法是在按钮内创建一个背景剪辑,并为其提供适当的大小。然后创建文本字段并根据背景调整其比例。这样按钮就保持了原来的比例,不会弄乱里面的东西 希望这有帮助 PS:
useHandCursor=true
在设置buttonMode=true
;)时不需要 删除这些行:
button.width = 260;
button.height = 50;
而且,您将更容易定位文本-按钮高度也受添加的文本字段的影响,因此更好地使用固定值,例如
myText.y = 25 - (myText.height * 0.5);
您需要转到adobe docs about TextField,查看需要移动的实际边界框是什么。添加
myText.border=true代码>然后您将看到需要重新定位的确切内容。