窗口底部的JButton

时间:2012-01-25 19:17:23

标签: java swing

一段时间没有这样做,我又回到了挥杆状态。 固定大小的按钮停留在窗口底部的最佳方法是什么? 如果我使用Borderlayout.south,它会使按钮太宽。我不记得这个伎俩

2 个答案:

答案 0 :(得分:3)

通常有两种方法可以解决这个问题。

  • 嵌套,即。创建具有边框布局的面板。使用流布局创建另一个面板以添加按钮。将第二个面板放在第一个面板的南边
  • 使用更复杂的布局,例如GridBagLayoutMiG Layout

答案 1 :(得分:2)

使用MigLayout。使用Swing非常方便。

  int buttonWidth = 100;
  int buttonHeight = 50;
  button.setPreferredSize(new Dimension(buttonWidth, buttonHeight));
  this.setLayout(new MigLayout("insets 0"));
  this.add(button, "pos 50%-" + buttonWidth/2 + " 100%-" + buttonHeight);

使用核心布局管理器可能有一种更简单的方法,甚至是使用MigLayout更简单的方法,但这将是我最初接近它的方式。

另一种替代方法是在父面板的大小发生变化时使用空布局和setBounds。大多数Swing程序员会建议不要使用null布局,在这种情况下,您可以查看BoxLayout。这完全取决于你,但我发现MigLayout是不可或缺的。