在flex 4中访问lastResult

时间:2012-01-09 11:47:35

标签: flex

我按照向导创建一个http服务来连接到php脚本。该脚本从数据库中提取一些随机记录。

标签定义为:

<s:Label id="label2" x="556" y="136" width="75" height="71"
         creationComplete="label2_creationCompleteHandler(event)"
         text="{GetQstResult2.lastResult}"/>

protected function label2_creationCompleteHandler(event:FlexEvent):void
        {
            GetQstResult2.token = qst.GetQst();
        }

结果使用向导格式化为数组,但我不知道如何访问这些值。现在,当我运行应用程序时,它会显示[对象问题]。

* Edit1:

    <qst:Qst id="qst"
             fault="Alert.show(event.fault.faultString + '\n' + event.fault.faultDetail)"
             showBusyCursor="true"/>
    <s:CallResponder id="GetQstResult2"/>

1 个答案:

答案 0 :(得分:0)

你看到[object Question]的原因很可能是因为你的lastResult是一个问题对象的实例,但是该对象没有实现一个toString()方法,所以它使用的是默认的toString()方法。它是对象层次结构 - 很可能是Object类。

您可以在Question类中定义toString()方法。或者,您可以在与远程调用相关的结果处理程序中设置标签的文本。我更喜欢第二种方法。在结果处理程序中,执行以下操作:

var myQuestionInstance : Question = event.result as Question;
label2.text = myQuestionInstance.someStringPropertyOnQuestion;