Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在JFrame中将FlowLayout更改为BoxLayout_Java_Swing_Layout Manager_Boxlayout_Flowlayout - Fatal编程技术网

Java 如何在JFrame中将FlowLayout更改为BoxLayout

Java 如何在JFrame中将FlowLayout更改为BoxLayout,java,swing,layout-manager,boxlayout,flowlayout,Java,Swing,Layout Manager,Boxlayout,Flowlayout,我在这方面已经工作了一段时间了,我这辈子都一事无成。我试图将按钮和标签设置为彼此重叠,而不是并排放置。我想我必须把布局形式从FlowLayout改为BoxLayout,但我不知道怎么做。这就是我目前所拥有的 import javax.swing.JFrame; public class VoteCounter { //---------------------------------------------- // Creates the main program frame.

我在这方面已经工作了一段时间了,我这辈子都一事无成。我试图将按钮和标签设置为彼此重叠,而不是并排放置。我想我必须把布局形式从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));
很简单


有关更多信息,请参阅:

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

JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(null,BoxLayout.Y_AXIS));
以下是使用BoxLayout的示例:

此外,还可以使用BoxLayout设置空白:


希望它能对您有所帮助。

要更快地获得更好的帮助,请发布一个(最简单、完整、可验证的示例)或(简短、完整、正确的示例)。