private void initComponents() {
jLabel4 = new javax.swing.JLabel();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel4.setText("jLabel4");
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setBackground(new java.awt.Color(255, 102, 102));
jLabel3.setText(gg.jTextField1.getText());
//parte do codigo
}
ViniGodoy
Nesse caso, esse novo JFrame vai estar com o JTextField vazio, não? Não há nada a ser copiado para o JLabel.
Fazer isso só vai copiar o texto, não vai manter os dois componentes “sincronizados”. Sincronizar dois componentes é outra história, o buraco é bem mais embaixo.
pardim7
ViniGodoy:
Nesse caso, esse novo JFrame vai estar com o JTextField vazio, não? Não há nada a ser copiado para o JLabel.
Fazer isso só vai copiar o texto, não vai manter os dois componentes "sincronizados". Sincronizar dois componentes é outra história, o buraco é bem mais embaixo.
Putz, é verdade, obrigado, coloquei uma String como static e coloquei o valor do jtextfield, ficou assim mais ou menos e deu certo:
JFrame1:
publicstaticStringvv;//privatevoidjTextField1ActionPerformed(java.awt.event.ActionEventevt){vv=jTextField1.getText();if(jTextField1.getText().equals("")){
JOptionPane.showMessageDialog(rootPane,"O campo de texto está em branco!");}
Deixar como static é uma péssima prática. Se você precisa que duas janelas saibam da existência uma da outra, passe a janela por parâmetro:
publicclassJanela2extendsJFrame{privateJanela1outraJanela;publicJanela2(Janela1outraJanela){this.outraJanela=outraJanela;}privatevoidjTextField1ActionPerformed(java.awt.event.ActionEventevt){vv=outraJanela.jTextField1.getText();if(vv.isEmpty()){JOptionPane.showMessageDialog(rootPane,"O campo de texto está em branco!");}}
pardim7
Ah ok, fiz passando a janela por parâmetro e está funcionando ok, Muito obrigado!