2012-01-09 5 views
0

ウィザードに従って、PHPスクリプトに接続するためのhttpサービスを作成します。スクリプトは、データベースからいくつかのランダムなレコードを取得します。フレックス4のlastResultにアクセスします。

ラベルの定義は次のとおりです。

<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"/> 

答えて

0

あなたは[オブジェクトの質問]を参照してください理由は、あなたのlastResultは、質問オブジェクトのインスタンスであるが、オブジェクトは、toString()メソッドを実装していなかったので、最も可能性が高いですので、そのオブジェクト階層のどこかで定義されたデフォルトのtoString()メソッドを使用しています。これはObjectクラスです。

QuestionクラスでtoString()メソッドを定義できます。または、リモート呼び出しに関連する結果ハンドラでラベルのテキストを設定できます。私は第2のアプローチを好む。結果ハンドラでは、次のような処理を行います。

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

コードをどこに置くのか分かりません。私はvalueObjectsとデータQstサービスと呼ばれるパッケージを持っていると言うことができます:GetQst():文字列型のキーを持つ質問。どうすればこれらにアクセスできますか? –

+0

"コードを配置する場所"リモートサービスの結果ハンドラにコードを入れます。あなたはあなたのリモートサービスのコードを提供しなかったか、それがどんな種類であるか教えてくれました。それ以上の詳細を与えるのは難しいです。 – JeffryHouser

+0

はい、コードを置く場所は、結果ハンドラがないので、に入れますか? –

関連する問題