繁体   English   中英

如何在JFrame中将FlowLayout更改为BoxLayout

[英]How to change FlowLayout to BoxLayout in JFrame

我已经为此工作了一段时间,因为我的一生无处可去。 我正在尝试将按钮和标签设置为彼此重叠而不是并排放置。 我想我必须将布局形式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

希望对您有帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM