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



我在一个视图中有多个容器。我试图在加载页面时设置默认按钮,以便当我按enter时,处理按键事件的函数调用。如果我简单地在preinit()函数中设置默认按钮,它不会工作。

有时很难调试"Does not work"。但是,在这种情况下,我怀疑你得到一个"空值"样式的错误。

preinitialize事件是在createChildren()之前触发的,所以很可能你想要设置为"Default"的按钮还不存在。关于Flex组件生命周期的更多信息。

你可以把你的代码移到初始化事件。

我假设通过"设置默认值"你的意思是你正在使用FocusManager来给你的按钮焦点?

假设我正确理解了您的问题,您需要做两个事情才能使此工作。

  1. 设置defaultButton
  2. 将焦点设置为容器或容器的子容器

正如@Flextras所说,preinit可能也不是最好的选择。

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

最新更新