Estou com o mesmo problema, já procurei e achei muitas respostas sobre isso! mas não consegui implementar.
Aqui está o meu código:
import java.awt.EventQueue;
public class Principal extends JFrame
{
private final JPanel contentPane;
private final JTextField enderecoLocal;
private final JTextField loginLocal;
private final JTextField enderecoRemoto;
private final JTextField bancoRemoto;
private final JTextField loginRemoto;
private final JPasswordField senhaLocal;
private final JPasswordField senhaRemoto;
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
@Override
public void run()
{
try
{
Principal frame = new Principal();
frame.setVisible(true);
}
catch (Exception e)
{
e.printStackTrace();
}
}
});
}
public Principal()
{
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 515, 322);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
SpringLayout sl_contentPane = new SpringLayout();
contentPane.setLayout(sl_contentPane);
JLabel lblEndereo = new JLabel("Endere\u00E7o");
sl_contentPane.putConstraint(SpringLayout.WEST, lblEndereo, 10, SpringLayout.WEST, contentPane);
contentPane.add(lblEndereo);
enderecoLocal = new JTextField();
sl_contentPane.putConstraint(SpringLayout.WEST, enderecoLocal, 88, SpringLayout.WEST, contentPane);
sl_contentPane.putConstraint(SpringLayout.EAST, enderecoLocal, -256, SpringLayout.EAST, contentPane);
sl_contentPane.putConstraint(SpringLayout.EAST, lblEndereo, -10, SpringLayout.WEST, enderecoLocal);
sl_contentPane.putConstraint(SpringLayout.NORTH, enderecoLocal, 0, SpringLayout.NORTH, lblEndereo);
contentPane.add(enderecoLocal);
enderecoLocal.setColumns(10);
JLabel ExENDERECOLOCAL = new JLabel("Ex: localhost");
sl_contentPane.putConstraint(SpringLayout.NORTH, ExENDERECOLOCAL, 6, SpringLayout.SOUTH, enderecoLocal);
sl_contentPane.putConstraint(SpringLayout.WEST, ExENDERECOLOCAL, 0, SpringLayout.WEST, enderecoLocal);
sl_contentPane.putConstraint(SpringLayout.EAST, ExENDERECOLOCAL, 203, SpringLayout.WEST, contentPane);
contentPane.add(ExENDERECOLOCAL);
JLabel lblLogin = new JLabel("Login");
sl_contentPane.putConstraint(SpringLayout.WEST, lblLogin, 0, SpringLayout.WEST, lblEndereo);
sl_contentPane.putConstraint(SpringLayout.EAST, lblLogin, 56, SpringLayout.WEST, contentPane);
contentPane.add(lblLogin);
loginLocal = new JTextField();
sl_contentPane.putConstraint(SpringLayout.NORTH, lblLogin, 2, SpringLayout.NORTH, loginLocal);
sl_contentPane.putConstraint(SpringLayout.NORTH, loginLocal, 6, SpringLayout.SOUTH, ExENDERECOLOCAL);
sl_contentPane.putConstraint(SpringLayout.WEST, loginLocal, 0, SpringLayout.WEST, enderecoLocal);
sl_contentPane.putConstraint(SpringLayout.EAST, loginLocal, 241, SpringLayout.WEST, contentPane);
loginLocal.setColumns(10);
contentPane.add(loginLocal);
JLabel lblSenha = new JLabel("Senha");
sl_contentPane.putConstraint(SpringLayout.NORTH, lblSenha, 6, SpringLayout.SOUTH, lblLogin);
sl_contentPane.putConstraint(SpringLayout.WEST, lblSenha, 0, SpringLayout.WEST, lblEndereo);
sl_contentPane.putConstraint(SpringLayout.EAST, lblSenha, 56, SpringLayout.WEST, contentPane);
contentPane.add(lblSenha);
JLabel lblRemoto = new JLabel("BANCO DE ORIGEM");
sl_contentPane.putConstraint(SpringLayout.EAST, lblRemoto, -19, SpringLayout.EAST, contentPane);
contentPane.add(lblRemoto);
JLabel label = new JLabel("Endere\u00E7o");
sl_contentPane.putConstraint(SpringLayout.WEST, lblRemoto, 0, SpringLayout.WEST, label);
sl_contentPane.putConstraint(SpringLayout.NORTH, label, 0, SpringLayout.NORTH, lblEndereo);
sl_contentPane.putConstraint(SpringLayout.WEST, label, 28, SpringLayout.EAST, enderecoLocal);
contentPane.add(label);
enderecoRemoto = new JTextField();
sl_contentPane.putConstraint(SpringLayout.WEST, enderecoRemoto, 341, SpringLayout.WEST, contentPane);
sl_contentPane.putConstraint(SpringLayout.EAST, label, -6, SpringLayout.WEST, enderecoRemoto);
sl_contentPane.putConstraint(SpringLayout.NORTH, enderecoRemoto, -2, SpringLayout.NORTH, lblEndereo);
sl_contentPane.putConstraint(SpringLayout.EAST, enderecoRemoto, 494, SpringLayout.WEST, contentPane);
enderecoRemoto.setColumns(10);
contentPane.add(enderecoRemoto);
JLabel ExENDERECO = new JLabel("Ex: mysql.jcomp.com.br");
sl_contentPane.putConstraint(SpringLayout.NORTH, ExENDERECO, 0, SpringLayout.NORTH, ExENDERECOLOCAL);
sl_contentPane.putConstraint(SpringLayout.WEST, ExENDERECO, 0, SpringLayout.WEST, enderecoRemoto);
sl_contentPane.putConstraint(SpringLayout.EAST, ExENDERECO, 0, SpringLayout.EAST, enderecoRemoto);
contentPane.add(ExENDERECO);
JLabel lblBanco = new JLabel("Banco");
sl_contentPane.putConstraint(SpringLayout.NORTH, lblBanco, 0, SpringLayout.NORTH, lblLogin);
sl_contentPane.putConstraint(SpringLayout.WEST, lblBanco, 28, SpringLayout.EAST, loginLocal);
contentPane.add(lblBanco);
bancoRemoto = new JTextField();
sl_contentPane.putConstraint(SpringLayout.EAST, lblBanco, -26, SpringLayout.WEST, bancoRemoto);
sl_contentPane.putConstraint(SpringLayout.NORTH, bancoRemoto, -2, SpringLayout.NORTH, lblLogin);
sl_contentPane.putConstraint(SpringLayout.WEST, bancoRemoto, 341, SpringLayout.WEST, contentPane);
sl_contentPane.putConstraint(SpringLayout.EAST, bancoRemoto, 0, SpringLayout.EAST, enderecoRemoto);
bancoRemoto.setColumns(10);
contentPane.add(bancoRemoto);
JLabel ExBANCO = new JLabel("Ex: jcompany_clarel");
sl_contentPane.putConstraint(SpringLayout.NORTH, ExBANCO, 0, SpringLayout.NORTH, lblSenha);
sl_contentPane.putConstraint(SpringLayout.WEST, ExBANCO, 0, SpringLayout.WEST, enderecoRemoto);
sl_contentPane.putConstraint(SpringLayout.EAST, ExBANCO, 470, SpringLayout.WEST, contentPane);
contentPane.add(ExBANCO);
JLabel label_2 = new JLabel("Login");
sl_contentPane.putConstraint(SpringLayout.NORTH, label_2, 27, SpringLayout.SOUTH, lblBanco);
sl_contentPane.putConstraint(SpringLayout.WEST, label_2, 269, SpringLayout.WEST, contentPane);
sl_contentPane.putConstraint(SpringLayout.EAST, label_2, 0, SpringLayout.EAST, lblBanco);
contentPane.add(label_2);
loginRemoto = new JTextField();
sl_contentPane.putConstraint(SpringLayout.NORTH, loginRemoto, 6, SpringLayout.SOUTH, ExBANCO);
sl_contentPane.putConstraint(SpringLayout.WEST, loginRemoto, 341, SpringLayout.WEST, contentPane);
sl_contentPane.putConstraint(SpringLayout.EAST, loginRemoto, 0, SpringLayout.EAST, enderecoRemoto);
loginRemoto.setColumns(10);
contentPane.add(loginRemoto);
JLabel label_3 = new JLabel("Senha");
contentPane.add(label_3);
JLabel lblLocal = new JLabel("BANCO DE DESTINO");
sl_contentPane.putConstraint(SpringLayout.NORTH, lblEndereo, 5, SpringLayout.SOUTH, lblLocal);
sl_contentPane.putConstraint(SpringLayout.NORTH, lblRemoto, 0, SpringLayout.NORTH, lblLocal);
sl_contentPane.putConstraint(SpringLayout.NORTH, lblLocal, 0, SpringLayout.NORTH, contentPane);
sl_contentPane.putConstraint(SpringLayout.WEST, lblLocal, 10, SpringLayout.WEST, contentPane);
sl_contentPane.putConstraint(SpringLayout.EAST, lblLocal, -372, SpringLayout.EAST, contentPane);
contentPane.add(lblLocal);
JButton btnExecutar = new JButton("EXECUTAR");
btnExecutar.addMouseListener(new MouseAdapter()
{
@Override
public void mouseClicked(MouseEvent arg0)
{
Backup migrador = new Backup();
migrador.enderecolocal = enderecoLocal.getText();
migrador.loginlocal = loginLocal.getText();
migrador.senhalocal = senhaLocal.getText();
migrador.enderecobanco = enderecoRemoto.getText();
migrador.banco = bancoRemoto.getText();
migrador.login = loginRemoto.getText();
migrador.senha = senhaRemoto.getText();
if (!(bancoRemoto.getText().equals("")) && !(enderecoLocal.getText().equals("")) && !(enderecoRemoto.getText().equals("")))
{
try
{
migrador.executar();
}
catch (IOException e)
{
e.printStackTrace();
}
catch (SQLException e)
{
e.printStackTrace();
}
catch (InterruptedException e)
{
e.printStackTrace();
}
catch (ClassNotFoundException e)
{
e.printStackTrace();
}
}
}
});
sl_contentPane.putConstraint(SpringLayout.WEST, btnExecutar, 10, SpringLayout.WEST, contentPane);
sl_contentPane.putConstraint(SpringLayout.SOUTH, btnExecutar, -10, SpringLayout.SOUTH, contentPane);
contentPane.add(btnExecutar);
senhaLocal = new JPasswordField();
sl_contentPane.putConstraint(SpringLayout.NORTH, senhaLocal, 6, SpringLayout.SOUTH, loginLocal);
sl_contentPane.putConstraint(SpringLayout.WEST, senhaLocal, 32, SpringLayout.EAST, lblSenha);
sl_contentPane.putConstraint(SpringLayout.EAST, senhaLocal, -100, SpringLayout.WEST, ExBANCO);
contentPane.add(senhaLocal);
senhaRemoto = new JPasswordField();
sl_contentPane.putConstraint(SpringLayout.NORTH, label_3, 2, SpringLayout.NORTH, senhaRemoto);
sl_contentPane.putConstraint(SpringLayout.EAST, label_3, -26, SpringLayout.WEST, senhaRemoto);
sl_contentPane.putConstraint(SpringLayout.NORTH, senhaRemoto, 11, SpringLayout.SOUTH, loginRemoto);
sl_contentPane.putConstraint(SpringLayout.WEST, senhaRemoto, 0, SpringLayout.WEST, enderecoRemoto);
sl_contentPane.putConstraint(SpringLayout.EAST, senhaRemoto, -5, SpringLayout.EAST, enderecoRemoto);
contentPane.add(senhaRemoto);
JLabel LocalDoBackup = new JLabel("Local do Backup");
sl_contentPane.putConstraint(SpringLayout.WEST, label_3, 165, SpringLayout.EAST, LocalDoBackup);
sl_contentPane.putConstraint(SpringLayout.NORTH, LocalDoBackup, 19, SpringLayout.SOUTH, senhaLocal);
sl_contentPane.putConstraint(SpringLayout.WEST, LocalDoBackup, 0, SpringLayout.WEST, lblEndereo);
sl_contentPane.putConstraint(SpringLayout.EAST, LocalDoBackup, -393, SpringLayout.EAST, contentPane);
contentPane.add(LocalDoBackup);
}
}
Aqui está a imagem de como fica! e na parte em verde, estou tentando colocar um logo de 186x80 que está numa pasta no meu computador. Se alguém conseguir me ajudar, pois ainda não tenho experiência com JFRAME.
Obrigado desde já.
