[英]Calling a function from one class, from another
我在使用ActionScript 3時遇到了一個小問題,我來這里是為了尋求幫助。
我有兩節課。 一個叫做Sledge
,另一個叫做Sock
,還有一個叫做Main
的文檔類。
我的問題如下:
在Sledge
內部,我調用在Main
文檔類內部定義的函數。 我將如何告訴類去文檔類並運行該函數? 其他類還是僅文檔類也一樣嗎?
在Sledge
內部,我有以下語句: if(hitTestObject(sock.myHitArea)) { /* somecode*/ }
sock
是另一個單獨類的實例,到目前為止,已經創建了它。 但是,當我嘗試運行此程序時,系統會告訴我它沒有定義。 我將如何解決這個問題?
您如何表達問題有些模棱兩可的問題。 如果您發布該問題的簡短代碼,將很有幫助。
但是,我將嘗試回答第一個問題:
在Sledge內部,我調用在Main文檔類內部定義的函數。 我將如何告訴類去文檔類並運行該函數?
您可能希望將Main類傳遞給Sledge類或使用更可取的事件。 如果通過課程,它將看起來像這樣...
class Sledge {
private var main:Main;
function Sledge(main:Main) {
this.main = main;
}
function doSomething():void {
main.runSomeFunction();
}
}
或者,如果使用事件:
class Main {
private var sledge:Sledge;
function Main() {
sledge = new Sledge();
sledge.addEventListener("mainDoSomething", doSomething);
}
private function doSomething(e:Event):void {
// .... do stuff
}
}
class Sledge extends EventDispacter {
function Sledge() {
}
public function doSomething():void {
dispatchEvent(new Event("mainDoSomething"));
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.