我希望得到這個工作:如何獲取圖像上的點擊處理程序?
私有函數frigganWork(事件:MouseEvent)方法:無效 { 跟蹤( 「?WTF」); navigateToURL(new URLRequest(「https://stackoverflow.com/questions/ask」),「_self」);
}
,但我得到一個錯誤: 「呼籲可能未定義的方法frigganWork」
我希望得到這個工作:如何獲取圖像上的點擊處理程序?
私有函數frigganWork(事件:MouseEvent)方法:無效 { 跟蹤( 「?WTF」); navigateToURL(new URLRequest(「https://stackoverflow.com/questions/ask」),「_self」);
}
,但我得到一個錯誤: 「呼籲可能未定義的方法frigganWork」
由於您位於mx:Component
標記內,因此您的範圍已更改:this
現在引用itemRenderer組件。
您可以使用outerDocument
解決更大的範圍。事件處理函數確實需要公開,因爲它是從另一個類中調用的。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
public function onClick(event:Event):void {}
]]>
</mx:Script>
<mx:ComboBox>
<mx:itemRenderer>
<mx:Component>
<mx:Image click="{outerDocument.onClick(event)}" />
</mx:Component>
</mx:itemRenderer>
</mx:ComboBox>
</mx:Application>
如果您從內嵌項目渲染器中調用frigganWork() - 您必須將該方法的範圍更改爲public。
在什麼情況下,您在(發佈更多的代碼,請) – danjarvis 2010-01-29 21:57:25