0

有人可以告诉我如何在运行时动态更改按钮标签吗?

这是我尝试过的代码:

var go:Button = new Button();
go = symbol_1;
go.label = "GO";

这似乎不起作用。

所述错误是“通过静态类型 flash.display:SimpleButton 的引用访问可能未定义的属性标签”

4

1 回答 1

0

首先,你做错了。如果您说var go:Button = new Button();您创建一个新Button对象,然后将另一个对象分配给go变量。因此,您创建的新内容已丢失,没有对其的引用,因此在这种情况下Button无需创建新内容。Button

其次,从错误中可以清楚地看出,您symbol_1是类型。对象没有属性,这就是为什么在尝试分配给它时会出错。SimpleButtonSimpleButtonlabel

现在解决方法。您可以TextField在您的中放置 asymbol_1并给它一个实例名称,然后您将像这样引用它:

// assuming that instance name for the placed TextField is 'textBox'
symbol_1.textBox.text = "new label";

编辑:实际上采用下面描述的第二种方法,因为第一种方法有问题且不可靠。

或者我建议您根据MovieClip具有标签属性的类创建自己的类,并且可以轻松更改它。

于 2013-07-12T07:16:19.970 回答