setFocusable()和setFocusableWindowState()之间的区别是什么?

时间:2015-04-02 13:08:45

标签: java swing awt

我对这两个API感到困惑:

  

java.awt.Component.setFocusable():

     

将此Component的可聚焦状态设置为指定值。   该值将覆盖Component的默认可聚焦性。

  

java.awt.Window.setFocusableWindowState():

     

设置此窗口是否可以成为焦点窗口   isFocusableWindow中概述的其他要求。如果这个窗口的话   可聚焦窗口状态设置为false,然后isFocusableWindow将   返回false。如果此Window的可聚焦窗口状态设置为true,   那么isFocusableWindow可能会返回true或false,具体取决于   为了使Window成为必须满足的其他要求   可聚焦。

1 个答案:

答案 0 :(得分:1)

我会说:

Component.setFocusable()适用于各个组件。

Window.setFocusableWindowState()适用于整个窗口。如果窗口无法聚焦,则默认情况下也不能对任何组件进行聚焦。操作系统也会使用它。例如,当您在Windows上使用Alt-Tab循环浏览窗口时,任何无法对焦的窗口都将无法访问。