在失去焦点后保持焦点等级的按钮

时间:2012-05-21 05:57:02

标签: extjs focus extjs4 blur extjs4.1

我在网格面板的底部工具栏中有一些按钮,用于控制添加和删除行编辑网格中的记录。

处理程序非常简单:“new”按钮创建模型的实例,附加到网格,然后在新行上打开行编辑器; “编辑”按钮只打开所选行的行编辑器; “删除”会从商店中销毁记录并刷新网格视图。

由于某些原因,这些按钮不会丢失焦点类,当它们具有焦点时会为它们提供边框。这是一张图片:

enter image description here

在图片中,“新建”按钮和“删除”按钮都有焦点类,当我按下“编辑”按钮时,即使在完成行编辑操作并关闭行之后,它也会保留焦点类-editor。

我确实发现,当我在其中一个永久“聚焦”的按钮上然后鼠标悬停然后点击其他东西时,焦点类就会消失。

我知道我可以为我各自的控制器中的所有按钮组件设置一个模糊处理程序,但我会认为这个功能是内置的,所以我要问看看文档中是否有某些我遗漏的东西。

它不会放弃的类是:

x-focus x-btn-focus x-btn-default-toolbar-small-focus

这是在Windows 7上的FF10中的ExtJS 4.1.0。但我确实注意到ExtJS 4.02和4.07中的类似行为,直到现在才需要处理它。

1 个答案:

答案 0 :(得分:2)

我发现它是什么:

在每个按钮的处理程序链中的某个点处,该按钮被禁用。在ExtJS中禁用某个按钮时,它会阻止blur事件触发。

有必要禁用按钮,以便在处理程序中简单地添加button.blur()的解决方案是正确的方法。