Actionscript 3 如何使用按钮保持文本的位置?

Actionscript 3 如何使用按钮保持文本的位置?,actionscript-3,flash,flashdevelop,Actionscript 3,Flash,Flashdevelop,试图创建一个带有文本的按钮,但似乎找不到一个简单的方法使其正确定位。我想,在构建按钮之后,我也可以将按钮的x/y/高度/宽度作为文本字段参数的目标。但是trace(bStart.x)和trace(bStart.y)都返回0。我做错了什么 我所拥有的: var bFormat:TextFormat = new TextFormat(); bFormat.font = "Arial"; bFormat.bold = true; bFormat.color = 0x000000; bFormat.si

试图创建一个带有文本的按钮,但似乎找不到一个简单的方法使其正确定位。我想,在构建按钮之后,我也可以将按钮的x/y/高度/宽度作为文本字段参数的目标。但是trace(bStart.x)和trace(bStart.y)都返回0。我做错了什么

我所拥有的:

var bFormat:TextFormat = new TextFormat();
bFormat.font = "Arial";
bFormat.bold = true;
bFormat.color = 0x000000;
bFormat.size = 28;
bFormat.align = "center";

var bStart:Sprite = new Sprite();
bStart.graphics.beginFill(0X00FF00, 1);
bStart.graphics.drawRect(stage.stageWidth / 2 - 100, stage.stageHeight / 2 - 200, 100, 50);
bStart.graphics.endFill();
bStart.buttonMode = true;
bStart.mouseChildren = false;

var bStartText:TextField = new TextField();
bStartText.defaultTextFormat = bFormat;
bStartText.text = "Start";
bStartText.x = bStart.x;
bStartText.y = bStart.y;
bStartText.height = bStart.height;
bStartText.width = bStart.width;

stage.addChild(bStart);
bStart.addChild(bStartText);

因为你没有改变b开始的x&y,你只是从x&y开始画, 精灵对象本身仍处于0,0

试试这个

...
bStart.graphics.drawRect(stage.stageWidth / 2 - 100, stage.stageHeight / 2 - 200, 0, 0);
bStart.graphics.endFill();
bStart.x = 100;
bStart.y = 50;
...

如果你在精灵中添加文本,它将与精灵具有相同的坐标,因此无需将文本x,y设置为相同

+1啊,现在一切都有意义了,哈哈。感谢你澄清了绘图区域与位置的关系。我以为他们是同一个人=/