2011-01-05 13 views
1

は、私は、IDActionscriptを使ってRadioButtonGroupに "id"を割り当てる方法は?

rdGroup.id = "id_RdGroup"; 

を割り当て、私はVBoxの内側にこのグループを追加する方法

var vbBox:VBox = new VBox(); 
vbBox.addElement(rdGroup); 

このことは、エラーを与えると言うことができますどのように私は

var rdGroup:RadioButtonGroup = new RadioButtonGroup(); 

を持って言うことができます。そのプロパティIDが見つかりません...任意のソリューションですか?

答えて

2

idは、作成しているオブジェクトの名前を定義できるmxmlプロパティです。だから、多かれ少なかれ、

<mx:Button id="myButton" /> 

は、この擬似コードと同じです:

public var myButton:Button = new Button(); 
this.addChild(myButton); 

MXML定義されたオブジェクトはショートカットです。 idプロパティを定義しないと(コード内の特定のオブジェクトを参照する必要がないため)、コンパイラによって作成されます。コンパイラは一意の名前を選択します。

オブジェクトの属性がidであるため、そのオブジェクトを割り当てることはできません。 MXMLのidは、あなたの変数の名前です。

あなたが何らかの形でそれらのリストを保持する必要があります文字列で複数の変数にハンドルを維持しようとしている場合、一つの可能​​な解決策は次のようになります。

var myGroups:Object = new Object(); 
var rdGroup:RadioButtonGroup = new RadioButtonGroup(); 
myGroups["id_RdGroup"] = rdGroup; 
[...] 
vbBox.addElement(myGroups["id_RdGroup"]); 
関連する問題