Apache flex 在预初始化中设置默认按钮

Apache flex 在预初始化中设置默认按钮,apache-flex,defaultbutton,Apache Flex,Defaultbutton,视图中有多个容器。我试图在页面加载时设置默认按钮,这样当我按下enter键时,处理keydown事件的函数被调用。如果我只是在preinit()函数中设置默认按钮,它就不起作用了 我如何才能做到这一点?有时调试“不工作”很困难。但是,在这种情况下,我怀疑您会得到一个“Null value”样式的错误 preinitialize事件在createChildren()之前触发,因此最有可能的是您要设置“Default”的按钮还不存在。更多关于这个项目的信息 您可以将代码移动到initialize事件

视图中有多个容器。我试图在页面加载时设置默认按钮,这样当我按下enter键时,处理keydown事件的函数被调用。如果我只是在preinit()函数中设置默认按钮,它就不起作用了

我如何才能做到这一点?

有时调试“不工作”很困难。但是,在这种情况下,我怀疑您会得到一个“Null value”样式的错误

preinitialize事件在createChildren()之前触发,因此最有可能的是您要设置“Default”的按钮还不存在。更多关于这个项目的信息

您可以将代码移动到initialize事件


我假设“设置默认值”是指您正在使用来提供按钮焦点

假设我正确理解了你的问题,你需要做两件事才能使这项工作顺利进行

  • 设置默认按钮
  • 将焦点设置为容器或容器的某个子容器
  • 正如@Flextras所说,preinit可能也不是最好的选择

    如果容器是在MXML中声明的,我建议在MXML声明中设置defaultButton属性,并将焦点设置为creationComplete