這些是同一個應用程序下的第一個腳本正在申請中,第二個腳本在dataGrid下。從第一個腳本到outerClick()我正在訪問itemrenderer中的inner()函數。那麼我可以通過outerDocument對象輕鬆地從innerClick()訪問函數outer(),但是可以使用what_to_use從outerClick()函數訪問itemrenderer中的inner()函數。我嘗試過使用mx:component id「」和class =「」,但它無法識別itemrenderer下的函數。如果我們可以通過使用「outerdocument」對象從渲染項目訪問外部函數,那麼我們不能從外部訪問內部函數。
<mx:Script>
<![CDATA[
public function outer():void{
Alert.show("Hi i am outer object");
}
public function outerClick():void{
what_to_use.inner();
}
]]>
</mx:Script>
以下項目在數據網格下呈現。
<s:itemRenderer>
<mx:Component>
<s:GridItemRenderer>
<fx:Script>
<![CDATA[
public function innerClick():void{
outerDocument.outer();
}
public function inner():void{
Alert.show("Hi i am inner");
}
]]>
</fx:Script>
<s:CheckBox id="sel" selected="{data.checked=sel.selected}" change="{data.checked}" click="innerClick()"/>
</s:GridItemRenderer>
</mx:Component>
</s:itemRenderer>
我終於通過派發一個事件來實現它。感謝您解釋這個概念。它清除了我的一些誤解...... –