要在应用程序中创建焦点导航,请在应接收焦点的任何对象(包括按钮)上设置 tabIndex
属性。当用户按下 Tab 键时,FocusManager 就会查找一个已启用对象,此对象应具有比 tabIndex
当前值更高的 tabIndex
属性。FocusManager 达到 tabIndex
属性的最高值后,它就会返回到零。因此,在以下范例中,首先 comment
对象(可能是 TextArea 组件)接收焦点,然后 okButton
对象接收焦点:
comment.tabIndex = 1; okButton.tabIndex = 2;
要创建一个当用户按下 Enter 键 (Windows) 或者 Return 键 (Macintosh) 时接收焦点的按钮,可将 FocusManager.defaultPushButton
属性设为所需按钮的实例名称,如下所示:
focusManager.defaultPushButton = okButton;
注意:FocusManager 与对象放在舞台上的时间(对象的深度顺序)有关,而与它们在舞台上的相对位置无关。这与 Flash Player 处理 Tab 键排序的方式不同。
FocusManager 没有创作参数。你必须使用“动作”面板中 FocusManager 类的动作脚本方法和属性。有关详细信息,请参阅 FocusManager 类。
以下步骤会在 Flash 应用程序中创建一个焦点方案。
comment.tabIndex = 1; okButton.tabIndex = 2; focusManager.setFocus(comment); focusManager.defaultPushButton = okButton; lo = new Object(); lo.click = function(){ trace("button was clicked"); } okButton.addEventListener("click", lo);
这段代码设置了 Tab 键顺序,并指定一个默认按钮,在用户按 Enter 键 (Windows) 或 Return 键 (Macintosh) 时可以用来接收 click
事件。