Salve desenvolvedores,
Estou começando no Java, após 2 anos com .net estou definitivamente migrando, porém apanhando um pouco no eclipse.
Comecei a usar o swing hoje e estou com dúvidas em como passar uma ação de, por exemplo, fechar um JFrame.
Vou colar o código que foi gerado e se for possivel me darem uma explicação basicona mesmo de como o swing funciona.
Abraços.
import javax.swing.SwingUtilities;
import java.awt.BorderLayout;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.Rectangle;
import javax.swing.JTextField;
import javax.swing.JButton;
public class Principal extends JFrame {
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
private JLabel lbNome = null;
private JLabel lbSobrenome = null;
private JLabel lbDtNascimento = null;
private JTextField txtNome = null;
private JTextField txtSobrenome = null;
private JTextField txtDtNasc = null;
private JButton btnEnviar = null;
private JButton btnFechar = null;
/**
* This method initializes txtNome
*
* @return javax.swing.JTextField
*/
private JTextField getTxtNome() {
if (txtNome == null) {
txtNome = new JTextField();
txtNome.setBounds(new Rectangle(120, 20, 150, 20));
}
return txtNome;
}
/**
* This method initializes txtSobrenome
*
* @return javax.swing.JTextField
*/
private JTextField getTxtSobrenome() {
if (txtSobrenome == null) {
txtSobrenome = new JTextField();
txtSobrenome.setBounds(new Rectangle(120, 50, 150, 20));
}
return txtSobrenome;
}
/**
* This method initializes txtDtNasc
*
* @return javax.swing.JTextField
*/
private JTextField getTxtDtNasc() {
if (txtDtNasc == null) {
txtDtNasc = new JTextField();
txtDtNasc.setBounds(new Rectangle(120, 80, 150, 20));
}
return txtDtNasc;
}
/**
* This method initializes btnEnviar
*
* @return javax.swing.JButton
*/
private JButton getBtnEnviar() {
if (btnEnviar == null) {
btnEnviar = new JButton();
btnEnviar.setBounds(new Rectangle(50, 146, 71, 20));
btnEnviar.setText("Enviar");
}
return btnEnviar;
}
/**
* This method initializes btnFechar
*
* @return javax.swing.JButton
*/
private JButton getBtnFechar() {
if (btnFechar == null) {
btnFechar = new JButton();
btnFechar.setBounds(new Rectangle(171, 146, 73, 20));
btnFechar.setText("Fechar");
}
return btnFechar;
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
SwingUtilities.invokeLater(new Runnable() {
public void run() {
Principal thisClass = new Principal();
thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
thisClass.setVisible(true);
}
});
}
/**
* This is the default constructor
*/
public Principal() {
super();
initialize();
}
/**
* This method initializes this
*
* @return void
*/
private void initialize() {
this.setSize(300, 200);
this.setContentPane(getJContentPane());
this.setTitle("JFrame");
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane() {
if (jContentPane == null) {
lbDtNascimento = new JLabel();
lbDtNascimento.setBounds(new Rectangle(5, 80, 105, 16));
lbDtNascimento.setText("Data Nascimento:");
lbSobrenome = new JLabel();
lbSobrenome.setBounds(new Rectangle(5, 50, 70, 16));
lbSobrenome.setText("Sobrenome:");
lbNome = new JLabel();
lbNome.setBounds(new Rectangle(5, 20, 40, 16));
lbNome.setText("Nome:");
jContentPane = new JPanel();
jContentPane.setLayout(null);
jContentPane.add(lbNome, null);
jContentPane.add(lbSobrenome, null);
jContentPane.add(lbDtNascimento, null);
jContentPane.add(getTxtNome(), null);
jContentPane.add(getTxtSobrenome(), null);
jContentPane.add(getTxtDtNasc(), null);
jContentPane.add(getBtnEnviar(), null);
jContentPane.add(getBtnFechar(), null);
}
return jContentPane;
}
}