我在一个视图中有一个以上的容器。我正在尝试在加载页面时设置默认按钮,以便当我按下回车键时,调用处理 keydown 事件的函数。如果我只是在 preinit() 函数中设置默认按钮,它就不起作用。
我怎样才能做到这一点 ?
我在一个视图中有一个以上的容器。我正在尝试在加载页面时设置默认按钮,以便当我按下回车键时,调用处理 keydown 事件的函数。如果我只是在 preinit() 函数中设置默认按钮,它就不起作用。
我怎样才能做到这一点 ?
有时很难调试“不起作用”。但是,在这种情况下,我怀疑您会收到“空值”样式错误。
preinitialize 事件在 createChildren() 之前触发,因此您想要设置为“默认”的按钮很可能还不存在。有关Flex 组件生命周期的更多信息。
您可以将代码移动到初始化事件。
我假设通过“设置默认值”你的意思是你正在使用FocusManager给你的按钮焦点?
假设我正确理解了您的问题,您需要做两件事才能完成这项工作。
正如@Flextras 所说,preinit 也可能不是最好的选择。
如果容器是在 MXML 中声明的,我建议在 MXML 声明中设置 defaultButton 属性,并将焦点设置在 creationComplete 上。