0

嗨,我对 actionscript 3 很陌生,我想澄清一下类的使用。我正在尝试使用来自http://siirjak.com的 AS3Commons UI 项目。但我不确定如何使用他们的一些课程。我在其中一个关键帧中对其进行格式化的方式是:

import com.AlertBox; // The location of the alertbox class
import com.AlertTutorialStep1; // The location of the example AlertTutorialStep1 class

var alertbox:AlertTutorialStep1 = new com.AlertTutorialStep1; // Creating an instance of the example class in the AlertTutorialStep1 doc

alertbox.AlertTutorialStep1(); // Trying to access the AlertTutorialStep1() function which is in the AlertTutorialStep1 class

但是我无法访问功能 AlertTutorialStep1() 并且不确定为什么会出现错误,有人可以为我提供一些见解吗?http://sibirjak.com/osflash/blog/tutorial-creating-an-alert-box-with-the-as3commons-popupmanager/

4

1 回答 1

0

如果可能,尽量避免使用时间线。我认为,如果您知道自己在做什么,OOP 和 Flash 时间线就可以工作,但是 stackoverflow 充满了初学者在时间线和课程上苦苦挣扎的问题,而且这些问题往往难以调试。尝试使用单个 Main 文档类来设置您的项目,该类实例化您的项目所需的所有其他类。

也就是说,假设您在相对于它的正确目录中有AlertBoxAlertTutorialStep1类及其依赖项,我认为如果您将 .fla 的文档类设置为该类,您的代码将起作用AlertBoxTutorial1

再次假设包都设置正确,您可以尝试用以下代码替换现有代码:

//import com.AlertBox; // Don't need to import this, AlertTutorialStep1 imports and uses it
import com.AlertTutorialStep1; // The location of the example AlertTutorialStep1 class

var alertbox:AlertTutorialStep1 = new AlertTutorialStep1(); // Don't need to fully qualify the class as it is already imported in the line above

this.addChild(alertbox); // Need to add the instance to the stage

//alertbox.AlertTutorialStep1(); // AlertTutorialStep1() is the constructor of the class and can't be invoked via an instance of it
于 2012-05-22T23:42:37.090 回答