Nesse código:
package Jogo;
import java.awt.Dimension;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Janela {
public static void main(String args[]) {
JFrame janela = new JFrame("Meu Jogo");
JPanel meuPainel = new JPanel();
JButton new_game = new JButton("New Game");
new_game.setPreferredSize(new Dimension(200, 100));
meuPainel.add(new_game);
janela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
janela.add(meuPainel);
janela.setVisible(true);
janela.setSize(1024, 720);
}
}
mas no caso assim ele tá tomando todo o espaço do Painel... Eu queria que ele ficasse centralizado com um tamanho específico, menor que o do painel.
Para responder essa pergunta devemos colocar em prática nosso conhecimento sobre Algoritmo e Estrutura de Dados.
Para centralizar o JButton no JPanel existem duas opções para centralização. A primeira opção mais arcaica é pegar o tamanho da sua janela e de acordo com o tamanho do botão e centralizá-lo no JPanel colocando as coordenadas que fazem com que ele fique centralizado. O segundo método é utilizar o trecho de código apresentado a seguir e aplicar ao botão que se deseja centralizar no JPanel.
painel = new JPanel();
FlowLayout layout = (FlowLayout) painel.getLayout();
layout.setAlignment(FlowLayout.CENTER);
painel.add(btn);
Portanto, para centralizar o JButton no JPanel existem duas opções, a primeira centralizar colocando as coordenadas centrais e a segunda utilizando o código apresentado usando o setAlignment.
Para escrever sua resposta aqui, entre ou crie uma conta
Compartilhar