2015-03-02 55 views
1

我创建了两个独立的类,我想使用我在第二个类中创建的函数的主类中创建的符号。我曾尝试将两个类导入对方,但是当我这样做时,我得到错误#1023。我对as3相当陌生,任何帮助都很赞赏,因为我不知道我做错了什么。你如何引用as3中不同类中的符号?

- 谢谢!

public class SuspectSimulatorDesktop extends Sprite { 
 
\t \t [Embed(source="/../lib/SuspectSit.png")] 
 
\t \t private var CharacterSit:Class; 
 
\t \t var tools:Tools = new Tools(); 
 
\t \t public var charSit:Bitmap = new CharacterSit(); 
 
\t \t public function SuspectSimulatorDesktop() { 
 
\t \t \t 
 
\t \t \t addChild(tools); 
 
    } 
 
}

//Tools (Second Class) 
 
package com.powerflasher.SampleApp { 
 
\t import com.powerflasher.SampleApp.SuspectSimulatorDesktop; 
 
\t import flash.events.MouseEvent; 
 
\t import flash.display.Sprite; 
 
\t /** 
 
\t * @author timcis 
 
\t */ 
 
\t 
 
\t public class Tools extends Sprite { 
 
\t \t [Embed(source="/../lib/Fist.png")] 
 
\t \t private var Fist:Class; 
 
\t \t var sSim:SuspectSimulatorDesktop = new SuspectSimulatorDesktop(); 
 
\t \t private function punchChar(event:MouseEvent):void{ 
 
\t \t \t sSim.charSit.rotation = 90; 
 
\t \t } 
 
}

+0

显示你的代码。 – BotMaster 2015-03-02 15:56:42

回答

0

错误#1023意味着你必须在你的代码堆栈溢出。请参阅此链接更多的解释:

http://curtismorley.com/2007/08/19/flashflex-as3-error-1023-stack-overflow-occurred/

关于你的代码,您创建了一个SuspectSimulatorDesktop类实例化对象的工具,其自身实例化一个对象SuspectSimulatorDesktop等等......每一类调用无限期其中另一填充堆栈,因此堆栈溢出。

您需要删除其中一行打破圈子并相应地调整你的代码:

var tools:Tools = new Tools(); 

var sSim:SuspectSimulatorDesktop = new SuspectSimulatorDesktop(); 
+0

谢谢,我能解决我的问题! – 2015-03-02 19:35:44

相关问题