JFrame调整为可见组件

时间:2012-07-16 12:46:01

标签: java swing jframe

我有一个应用程序,我希望用户能够在正常和高级设置之间进行选择。现在,如果用户检查JCheckBox并且高级设置应该消失,则问题开始。 我的想法是将所有不可靠的swing组件(JScrollPane,JLabel ...)设置为不可见,然后找到一个适合VISIBLE组件窗口的JFrame方法。 我的问题是,是否有这样的方法?

3 个答案:

答案 0 :(得分:5)

  

...然后找到一个适合VISIBLE组件窗口的JFrame方法。我的问题是,是否有这样的方法?

是的,有这样一种方法,它被称为pack()

这将级联顶层窗口所包含的所有容器的布局管理器,要求它们重新布局其可见组件,根据组件和布局管理器要求将组件大小调整为其首选大小,并最终调整顶层窗口的大小以适应容器及其组件。

答案 1 :(得分:4)

1。您可以使用setVisible(boolean b),使组件可见且不可见。

2。您可以使用isVisible()

检查组件是否可见

3. 您可以使用pack()方法, pack()方法根据需要设置框架尺寸

答案 2 :(得分:0)

我认为您可以在面板中包装高级内容(如果可能),并使用this.remove(component)从框架中删除该面板,然后使用this.pack()
你可以反过来显示它们,this.add(...)然后再this.pack()