Olá, eu criei essa classe:
`
package gui;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JTextField;
public class Teste implements ActionListener{
JDialog dialog1 = new JDialog();
JButton bt = new JButton("Opção1");
JButton bt2 = new JButton("Opção2");
BorderLayout layout = new BorderLayout();
JButton bt3 = new JButton("Opção1");
JButton bt4 = new JButton("Opção1");
Font f = new Font("Comic Sans MS",Font.BOLD,30);
JDialog dialog2 = new JDialog();
JLabel title = new JLabel("titulo");
JDialog dialog3 = new JDialog();
JTextField name = new JTextField("");
JButton ok = new JButton("ok");
JLabel title3 = new JLabel("titulo2");
JLabel title2 = new JLabel("titulo3");
Teste(){
dialog1.setUndecorated(true);
dialog1.setVisible(true);
title.setFont(f);
title.setBorder(BorderFactory.createEmptyBorder(10,10,10,10));
bt.setFont(f);
bt2.setFont(f);
bt.setPreferredSize(new Dimension(bt.getWidth(),80));
bt2.setPreferredSize(new Dimension(bt2.getWidth(),80));
dialog1.setLayout(layout);
dialog1.add(title,BorderLayout.NORTH);
dialog1.add(bt,BorderLayout.CENTER);
dialog1.add(bt2,BorderLayout.SOUTH);
dialog1.setLocationRelativeTo(null);
dialog1.pack();
name.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e){
if(e.getKeyCode()==KeyEvent.VK_ENTER){
dialog3.dispose();
}
}
});
bt.addActionListener(this);
bt2.addActionListener(this);
bt3.addActionListener(this);
bt4.addActionListener(this);
ok.addActionListener(this);
}
public void actionPerformed(ActionEvent evento) {
if(evento.getSource()==bt){
dialog1.dispose();
dialog2.setUndecorated(true);
dialog2.setVisible(true);
title2.setFont(f);
bt3.setFont(f);
bt4.setFont(f);
title2.setBorder(BorderFactory.createEmptyBorder(10,10,10,10));
title2.setHorizontalAlignment(JLabel.CENTER);
bt3.setBorder(BorderFactory.createEmptyBorder(20,40,20,40));
bt4.setBorder(BorderFactory.createEmptyBorder(20,40,20,40));
dialog2.setLayout(layout);
dialog2.add(title2,BorderLayout.NORTH);
dialog2.add(bt3,BorderLayout.CENTER);
dialog2.add(bt4,BorderLayout.SOUTH);
dialog2.setLocationRelativeTo(null);
dialog2.pack();
}
if(evento.getSource()==bt3){
dialog2.dispose();
dialog3.setUndecorated(true);
dialog3.setVisible(true);
dialog3.setLayout(layout);
title2.setFont(f);
title2.setBorder(BorderFactory.createEmptyBorder(5,10,5,10));
name.setPreferredSize(new Dimension(0,50));
name.setFont(f);
ok.setFont(f);
dialog3.add(title2,BorderLayout.NORTH);
dialog3.add(name,BorderLayout.CENTER);
dialog3.add(ok,BorderLayout.SOUTH);
dialog3.setLocationRelativeTo(null);
dialog3.pack();
}
if(evento.getSource()==bt4){
dialog2.dispose();
}
if(evento.getSource()==bt2){
dialog1.dispose();
}
if(evento.getSource()==ok){
dialog3.dispose();
}
}
}
`
Meu objetivo inicial era fazer jdialogs que iram aparecendo perguntando coisas para o usuário mais era para que todas as jdialogs ficassem centralizadas na tela, mais isso não está acontecendo, alguém pode me explicar porquê?