以下代码片段允许我使用BorderLayout Manager在JPanel上放置JTextfield和2个JButton .
JPanel strPanel = new ButtonPanel();
strPanel.setLayout(new BorderLayout());
setBorder( new EmptyBorder( 3, 3, 3, 3 ) );
strfield = new JTextField("",70);
strPanel.add("West", strfield);
strPanel.add("Center", btnCopy);
strPanel.add("East", btnPaste);
add("North", strPanel);
这是一个截图
然而,踢球者是当我调整JFrame的大小时,“复制”按钮被放大但我希望放大JTextField,而复制和粘贴按钮保持相同的大小 . 这是一个更新的截图:
为了尝试修复它,我下载了NetBeans等,并使用GUI设计器进行了游戏,但即使使用不同的布局管理器,我也无法解决它 .
有人可以解释一下吗?谢谢
1 回答
BorderLayout
没有为此任务剪切,因为它为CENTER
组件提供了所有剩余空间 . 如果您可以将布局更改为GridBagLayout
,则最简单的方法是将最左侧的组件全部留在空间上 .示例:
如果你真的想使用
BorderLayout
,你可以将按钮组合在一起并将它们添加到东方,将文本字段添加到中心,执行以下操作: