0

我在一个视图中有一个以上的容器。我正在尝试在加载页面时设置默认按钮,以便当我按下回车键时,调用处理 keydown 事件的函数。如果我只是在 preinit() 函数中设置默认按钮,它就不起作用。

我怎样才能做到这一点 ?

4

2 回答 2

0

有时很难调试“不起作用”。但是,在这种情况下,我怀疑您会收到“空值”样式错误。

preinitialize 事件在 createChildren() 之前触发,因此您想要设置为“默认”的按钮很可能还不存在。有关Flex 组件生命周期的更多信息。

您可以将代码移动到初始化事件。

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

于 2011-07-29T12:06:23.953 回答
0

假设我正确理解了您的问题,您需要做件事才能完成这项工作。

  1. 设置默认按钮
  2. 将焦点设置到容器或容器的某个子项

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

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

于 2011-07-29T12:13:30.237 回答