Flex Focus out处理程序运行时错误1009,如何修复?

时间:2010-11-08 11:46:51

标签: flex focus runtime movieclip

我遇到了这些奇怪的运行时错误。我使用Flex 3.5 SDK,闪存播放器设置为10.0.00。

TypeError: Error #1009: Cannot access a property or method of a null object reference.

at mx.flash :: UIMovieClip / removeFocusEventListeners()[E:\ dev \ flex \ sdk \ frameworks \ projects \ flash-integration \ src \ mx \ flash \ UIMovieClip.as:2368]  在mx.flash :: UIMovieClip / focusOutHandler()[E:\ dev \ flex \ sdk \ frameworks \ projects \ flash-integration \ src \ mx \ flash \ UIMovieClip.as:2411]

当我点击弹出窗口中的任何其他控件时,我收到此错误。我正在使用按钮,textarea,textinput和列表。我不知道如何解决这个问题......如果有人把我解决了这个问题会很棒吗?

2 个答案:

答案 0 :(得分:0)

如果没有代码,就很难确定。如果您尝试1)访问在调用焦点输出处理程序时尚未创建的对象的属性,或者2)访问未在焦点中引用的对象的属性,则可能发生此错误出处理程序。

确保焦点输出处理程序中的任何非局部变量引用在调用焦点输出处理程序之前在应用程序的某处创建的对象。此外,通过全局声明这些变量或将对象作为参数传递给函数,确保将对每个对象的引用传递到焦点输出处理程序。

如果可以,请发布代码。

答案 1 :(得分:0)

似乎您必须先从UIMovieClips中删除焦点,然后才能从舞台中删除它们: http://forums.adobe.com/thread/658335?tstart=-1

或者只针对修复此错误的Flash播放器10。

将此代码添加到可能从显示列表中删除UImovieClip的任何函数的顶部:

if (stage)
{
    stage.focus = null;
}