结合组分< - >容器(启用属性)

时间:2009-09-11 15:02:39

标签: java binding properties

我只是试图找出在Java中复制Windows Forms.Panel非常有用的功能的最佳方法。基本上,当您禁用Windows Forms.Panel时,所有子控件也都设置为禁用。但是,其启用的属性保留,以便在再次启用Panel时,在禁用Panel之前禁用的任何子控件,仍然禁用

我可以为JPanel添加一个属性监听器,当它的enabled属性发生变化时触发,然后遍历所有JPanel的组件并将它们设置为禁用,但这不会保留组件的已启用属性。

有什么建议吗?

2 个答案:

答案 0 :(得分:2)

可以在Disabled Panel条目中找到更复杂的解决方案。在内部,它使用mlk建议的集合来跟踪启用的组件。即使您不喜欢建议的解决方案,您仍然可以使用Swing Utils类轻松获取面板上的所有组件。

答案 1 :(得分:1)

将已禁用的组件存储在集合中,并在重新启用它们时检查此集合。