每当我将 jbutton 添加到容器中时,它都非常巨大。我认为使用 label.setBounds() 函数会起作用,但事实并非如此
public Liability_Calculator(String s)
{
super(s);
setSize(325,200);
Color customColor = Color.WHITE;
c = getContentPane();
c.setLayout(new BorderLayout());
//the button
ok = new JButton("OK");
//ok.setSize(50, 50);
//HERE IS WHERE I TRY AND RESIZE!
ok.setBounds(30,30,50,50);
c.add(ok, BorderLayout.SOUTH);
setVisible(true);
}
最佳答案
建议:
- 您需要阅读 layout managers到
- 了解为什么您的 GUI 会出现这种行为
- 并了解如何利用布局管理器轻松创建外观更好的 GUI。
- 您还需要避免在任何 GUI 组件上设置边界。
例如,JPanel 默认使用 FlowLayout(FlowLayout.CENTER))
,您可以通过将 ok JButton 放入 JPanel 中,然后将 JPanel 放入 contentPane 中来利用它:
ok = new JButton("OK");
// ok.setBounds(30, 30, 50, 50);
JPanel southPanel = new JPanel();
southPanel.add(ok);
c.add(southPanel, BorderLayout.SOUTH);
这会将第一张图像更改为第二张图像:
关于java - 在 Java 中调整 JButton 大小时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10155011/