听起来您真正想要使用的是
.setEnabled(false)
如果需要将面板中的所有组件都设置为禁用,则可以使用以下方法来做到这一点:(可能不是最佳方法,
JComponents但可以根据需要轻松修改,但这确实可行)
public static void setContainerAndChildrenEnabled(Container c, boolean b){ Component[] allComps = c.getComponents(); for(Component com : allComps) { com.setEnabled(b); if(com instanceof Container) setContainerAndChildrenEnabled((Container) com, b); }}然后使用您要设置的面板调用它,并选择true或false启用/禁用。这也将递归调用
setEnabled()每一个
Component内
Container
从文档中有两点需要注意:
注意:禁用轻量级组件不会阻止其接收MouseEvent。
注意:禁用重量级容器将阻止该容器中的所有组件接收任何输入事件。但是禁用轻量级容器只会影响此容器。
看到
isLightweight()



