如何设置JPanel大小?

时间:2010-06-22 18:32:27

标签: java swing resize jpanel

我正在使用Netbean的表单创建者,我正在尝试一些东西。我不确定它是否是布局管理器,但是当我创建自己的JPanel并将其添加到我的窗口的主内容窗格时,无论我使用何种重新标注方法,面板的大小始终在FrameView内最大化例如setSize或setPreferred大小。我对AWT和Swing很新。

4 个答案:

答案 0 :(得分:2)

使用NetBeans WYSIWYG设计师,它是一个平安的蛋糕 - 只需确保使用自由形式设计并使用鼠标进行调整大小。也许面板本身比FrameView大,所以双击它(你只是编辑它)并使它​​变小。然后双击以返回到父组件,你应该没事。

或者也许可以在NetBeans site查看一些教程。

答案 1 :(得分:2)

您不是假设手动设置尺寸。将其留给布局管理器,当窗口大小或字体甚至只是按钮标签发生变化时,GUI不会中断。

layout managers的诀窍在于,您可以在嵌套JPanel中使用一个而不是几个。这样,几乎任何布局都是可能的。

答案 2 :(得分:0)

这是因为JPanel容器的布局管理器(可能是JFrame或其他JPanel)指示JPanel最大化。

执行以下操作:

  1. 找出,谁是这个JPanel的父级(看看NetBeans的包含对象树)

  2. 检查,为容器定义了什么布局

  3. 阅读有关LayoutManager的文档(它们位于java.awt包中)

  4. ???

  5. PROFIT!

答案 3 :(得分:-1)

根据我的经验,Swing是一个非常挑剔的事情。我试试setMaximumSizesetPreferedSize。但是请注意:当我使用GridLayout时,它总是拉伸每个单元格中的任何内容(以使其对称)。 Flow,Box,Border,我认为GridBag没有那个问题。

-Brett