ScrollPane非常奇怪的问题

时间:2010-01-07 13:53:33

标签: flash actionscript-3 flash-cs4

这让我发疯了。似乎我不能在我的AS3代码中使用ScrollPane ANYWHERE而不会崩溃程序中的每个下拉框。

以下是点击下拉框时收到的错误消息:

TypeError: Error #1009: Cannot access a property or method of a null object reference.
at fl.containers::BaseScrollPane/drawBackground()
at fl.controls::List/draw()
at fl.core::UIComponent/drawNow()
at fl.controls::List/scrollToIndex()
at fl.controls::SelectableList/scrollToSelected()
at fl.controls::ComboBox/open()
at fl.controls::ComboBox/onToggleListVisibility()

单击任何下拉框时会发生这种情况,无论是否已执行引用ScrollPane的代码。真正迟钝的事情是,我甚至无法声明scrollPane var而不会导致这些错误。 IE这个:

var x:ScrollPane;

导致所有下拉列表中断。不,我不是在没有初始化的情况下尝试引用x。使用“new”初始化Scrollpanes会导致同样的问题,并将任何内容转换为ScrollPane。

为了解决这个问题,我一直在fla中创建滚动窗口并从AS引用它们。这不会破坏程序,我可以访问它们的属性。他们甚至以这种方式工作。

简而言之,在程序的任何地方使用“ScrollPane”一词就会破坏它。这不仅仅是我的系统。它发生在至少与我合作的其他两个开发者身上。

有什么想法吗?


编辑:

因此,在搜索了互联网一段时间之后,大多数人都通过遵循下面的bhup建议并将组件添加到库来解决这个问题。我正在从窗口向我的主fla添加这个东西 - >组件 - > ScrollPane,它确实出现在库中。它仍然无法正常工作。我甚至在舞台上放了一个实例,以确保它具有所需的所有符号无济于事。有谁知道任何可能不正确的设置或我可以看到的任何其他设置?如有必要,我会提供任何信息。

1 个答案:

答案 0 :(得分:2)

ScrollPane不属于ActionScript-3的核心库,因此在实例化或定义Components类的变量之前,需要将该特定组件添加到库中。你可以在(FLASH_INSTALL_DIR / LANGUAGE / Configuration / Component)和(FLASH_INSTALL_DIR / LANGUAGE / Configuration / Components)文件夹中找到组件源(FLASH_INSTALL_DIR / LANGUAGE / Configuration / Component Source)和组件UI。