java - 如何以这种方式对齐 JPanel 中的按钮

标签 java swing layout jpanel jbutton

我正在尝试使用 JPanelJButton 创建图形界面。到目前为止,一切都很好,除了当我创建 JButton 实例时,它们似乎在同一行内对齐。我希望每个按钮都在一行中,而不是全部在同一行中。

如何达到想要的效果?

public class Interface  extends JFrame{

    public  Interface ()
    {
    //frame 
        super("Panel");
        pack();
        setSize(500,400);
        setVisible(true);

    //declaration container
    Container c;
    c=getContentPane();
    c.setLayout(new BorderLayout());
    //declaration des panel avec leurs caracteristiques

    JPanel menu =new JPanel();
    JPanel MessageList =new JPanel();
    JPanel about=new JPanel();

    menu.setLayout(new FlowLayout());
    MessageList.setLayout(new FlowLayout());
    about.setLayout(new FlowLayout());

    menu.setBackground(Color.blue);
    MessageList.setBackground(Color.cyan);
    about.setBackground(Color.cyan);

    c.add(menu,BorderLayout.WEST);
    c.add(MessageList,BorderLayout.EAST);
    c.add(about,BorderLayout.SOUTH);
    //--------Button---------------------
    JButton button1=new JButton("button1");
    JButton button2=new JButton("Button2");

    menu.add(button1);
    menu.add(button2);
    //-----------------------------
        }

    public static void main(String args[])
    {
        Interface Message=new Interface();
        Message.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

最佳答案

如果要堆叠组件,请使用 BoxLayout 。另外,请务必遵循 @camickr 提出的建议。 .

另请参阅:

关于java - 如何以这种方式对齐 JPanel 中的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7169046/

相关文章:

java - 当检查方法是否为 true 时,会再次调用该方法吗?

java 。游戏的布局。如何将标签放置在窗口的右上角?

java - 无法使用 Maven 构建 Spring 4 项目

java - 如何确定org.netbeans.swing.outline的maven版本?

java - 如何将字符串完美居中 Jpanel 中心

java - 如何创建意见箱

layout - 布局页面在~/Views/Shared之外时,为什么Razor看不到ViewBag、Url.Content等?

Android展开/折叠RelativeLayout

java - 将 byte[] 转换为字符串时出现问题

Java 永远不会通过引用传递,对吗?...对吗?