如何在 JFrame 中将 FlowLayout 更改为 BoxLayout



我已经为此工作了一段时间,但我的生活无处可去。我正在尝试将按钮和标签设置为彼此重叠而不是并排设置。我想我必须将布局形式 FlowLayout 更改为 BoxLayout,但我不知道该怎么做。这就是我目前所拥有的。

import javax.swing.JFrame;
public class VoteCounter
{
    //----------------------------------------------
    // Creates the main program frame.
    //----------------------------------------------
    public static void main(String[] args)
{
    JFrame frame = new JFrame("Vote Counter");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.getContentPane().add(new VoteCounterPanel());
    frame.pack();
    frame.setVisible(true);
}
}

任何帮助将不胜感激。

frame.setLayout(new BoxLayout(frame, BoxLayout.PAGE_AXIS));

很简单。

欲了解更多信息,请参阅:http://docs.oracle.com/javase/tutorial/uiswing/layout/box.html

JPanel 的默认布局是 FlowLayout。您可以更改面板的布局,如下所示:

JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(null,BoxLayout.Y_AXIS));

下面是一个使用 BoxLayout 的示例:

为此 jframe 选择最佳布局

此外,您可以使用 BoxLayout 设置空格:

https://stackoverflow.com/a/22525005/3378204

希望对您有所帮助。

相关内容

  • 没有找到相关文章

最新更新