如何在垂直线上将按钮放在框架的中心?

0 java swing center button

我将这些按钮放在框架的中心并且彼此上方,就像这样.

                                     BUTTON
                                     BUTTON
                                     BUTTON
Run Code Online (Sandbox Code Playgroud)

我在这个论坛上搜索了多个主题,但到目前为止我尝试过的所有内容都没有用.我希望有人有解决方案.

这是我目前的代码:

package ípsen1;

import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JPanel;

public class Paneel extends JPanel implements ActionListener {
Image achtergrond;
private JButton spelHervatten;
private JButton spelOpslaan;
private JButton spelAfsluiten;


public Paneel(){
    //buttons   
    spelHervatten = new JButton("Spel hervatten");
    spelHervatten.setPreferredSize(new Dimension(380, 65));

    spelOpslaan = new JButton("Spel opslaan");
    spelOpslaan.setPreferredSize(new Dimension(380, 65));

    spelAfsluiten = new JButton("Spel afsluiten");  
    spelAfsluiten.setPreferredSize(new Dimension(380, 65));


    //object Paneel luistert naar button events
    spelAfsluiten.addActionListener(this);

    add (spelHervatten);
    add (spelOpslaan);
    add (spelAfsluiten);
    }

public void paintComponent(Graphics g) {
    //achtergrond afbeelding zetten
    achtergrond = Toolkit.getDefaultToolkit().getImage("hout.jpg");
    //screensize
    g.drawImage(achtergrond, 0,0, 1024,768,this);
}

    //actie na klik op button
            public void actionPerformed(ActionEvent e) {
                if(e.getSource() == spelAfsluiten){
                    System.out.println("Spel afsluiten");
                    System.exit(0);
                    }
                }
            }
Run Code Online (Sandbox Code Playgroud)

Mad*_*mer 7

你可以用一个 GridBagLayout

纽扣

setLayout(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridwidth = GridBagConstraints.REMAINDER;
gbc.fill = GridBagConstraints.HORIZONTAL;

add(new JButton("Button"), gbc);
add(new JButton("Button"), gbc);
add(new JButton("Button"), gbc);
add(new JButton("Button"), gbc);
Run Code Online (Sandbox Code Playgroud)

有关更多详细信息,请参见如何使用GridBagLayout