Text Flex从标签中获取文本值并将其放入变量中

Text Flex从标签中获取文本值并将其放入变量中,text,get,flash-builder,label,Text,Get,Flash Builder,Label,如何在Flex/Flash Builder on pageload中执行此操作 这是我的标签: <s:Label id="hallo" text="hallo"/> 但是,当我运行此命令时,会出现一个actionscript错误#1009:无法访问null的属性或方法…听起来好像您试图在.text属性被实例化之前访问它 假设您有一个mxml文件,该文件如下所示: <?xml version="1.0" encoding="utf-8"?> <tes

如何在Flex/Flash Builder on pageload中执行此操作

这是我的标签:

<s:Label id="hallo" text="hallo"/>

但是,当我运行此命令时,会出现一个actionscript错误#1009:无法访问null的属性或方法…

听起来好像您试图在.text属性被实例化之前访问它

假设您有一个mxml文件,该文件如下所示:

    <?xml version="1.0" encoding="utf-8"?>
    <test:LabelTester pageTitle="Label Test" 
    xmlns:test=".*"
    xmlns:fx="http://ns.adobe.com/mxml/2009"
    xmlns:s="library://ns.adobe.com/flex/spark">

        <s:Label id="hallo" text="hallo"/>

    </test:LabelTester>
然后您将得到您描述的运行时错误

然后将构造函数更改为:

function LabelTester() {
//  this.traceText();
    this.addEventListener(FlexEvent.CREATION_COMPLETE, this.handleCreation);
}
并加上:

private function handleCreation(creation:FlexEvent):void { this.traceText(); }

如果您在调试器中运行它,您应该会在控制台窗口中看到正确的值。

谢谢!我已经为这种情况找到了一个解决方法,但这对于将来的使用来说非常方便。我决定首先从其他地方获取var。但我想延长我先前的问题。我把问题贴在这里:谢谢你的帮助!
function LabelTester() {
//  this.traceText();
    this.addEventListener(FlexEvent.CREATION_COMPLETE, this.handleCreation);
}
private function handleCreation(creation:FlexEvent):void { this.traceText(); }