Como passar informação de um JFrame para outro?
por exemplo uma tela de login se eu tenho uma classe usuário e um JFrame login que o usuário insere nome e senha
como passar nome e senha para a classe usuário armazenar?
Como passar informação de um JFrame para outro?
por exemplo uma tela de login se eu tenho uma classe usuário e um JFrame login que o usuário insere nome e senha
como passar nome e senha para a classe usuário armazenar?
E aí, Lins888!
Cara, isso depende de como você tá fazendo a implementação do seu JFrame. Ou seja, isso depende de como é que você está codificando essa parte.
Vou te dar uma sugestão: posta a parte do código onde você acredita que exista alguma relação entre os dois frames
ok
public abstract class BaseGeral extends JFrame {
public BaseGeral() {
setIconImage(Toolkit.getDefaultToolkit().getImage(BaseGeral.class.getResource("/imagens/logoEstante.png")));
initialize();
}
private void initialize() {
setBounds(100, 100, 716, 368);
setLocationRelativeTo(null);
setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
public class JanelaDeCadastro extends BaseGeral {
public JanelaDeCadastro() {
getContentPane().setBackground(new Color(32, 33, 35));
setLocationRelativeTo(null);
entrar.setEnabled(false);
initialize();
}
private void initialize() {
//formatção do painel
setTitle("Cadastro");
getContentPane().setLayout(null);
setPanel( new JPanel());
getPanel().setBackground(new Color(0, 255, 153));
getPanel().setBounds(0, 0, 334, 339);
getContentPane().add(getPanel());
getPanel().setLayout(null);
//Adicionais do painel
iconAdm = new JLabel("New label");
iconAdm.setBounds(139, 11, 48, 72);
iconAdm.setIcon(new ImageIcon(JanelaDeCadastro.class.getResource("/imagens/icons8-user-male-52.png")));
getPanel().add(iconAdm);
setLabelNome(new JLabel("Nome:"));
getLabelNome().setBounds(10, 93, 48, 14);
getLabelNome().setFont(new Font("Times New Roman", Font.BOLD, 12));
getPanel().add(labelNome);
setSeparator(new JSeparator());
getSeparator().setBounds(10, 134, 284, 2);
getPanel().add(getSeparator());
setLabelEmail(new JLabel("e-mail:"));
getLabelEmail().setBounds(10, 142, 48, 14);
getLabelEmail().setFont(new Font("Times New Roman", Font.BOLD, 12));
getPanel().add(getLabelEmail());
setSeparator_1(new JSeparator());
getSeparator_1().setBounds(10, 186, 284, 2);
getPanel().add(getSeparator_1());
setLabelSenha(new JLabel("Senha:"));
getLabelSenha().setBounds(10, 192, 48, 14);
getLabelSenha().setFont(new Font("Times New Roman", Font.BOLD, 12));
getPanel().add(getLabelSenha());
setSeparator_2( new JSeparator());
getSeparator_2().setBounds(10, 236, 284, 2);
getPanel().add(getSeparator_2());
setCond(new JLabel("*Acima de 6 caracteres"));
getCond().setBounds(10, 236, 128, 14);
getCond().setForeground(SystemColor.menu);
getCond().setFont(new Font("Times New Roman", Font.BOLD | Font.ITALIC, 10));
getPanel().add(getCond());
setLabel( new JLabel(""));
getLabel().setBounds(0, 0, 710, 339);
getContentPane().add(getLabel());
//Declaração de nome, e-mail e senha
setTextNome(new JTextField());
getTextNome().setBounds(10, 111, 284, 20);
getTextNome().addKeyListener(new KeyAdapter() {
public void keyReleased(KeyEvent e) {
validar();
}
});
getTextNome().setBorder(null);
getTextNome().setBackground(new Color(0, 255, 153));
getTextNome().setFont(new Font("Times New Roman", Font.PLAIN, 12));
getTextNome().setColumns(10);
getPanel().add(getTextNome());
setTextEmail( new JTextField());
getTextEmail().setBounds(10, 161, 284, 20);
getTextEmail().addKeyListener(new KeyAdapter() {
public void keyReleased(KeyEvent e) {
validar();
}
});
getTextEmail().setFont(new Font("Times New Roman", Font.PLAIN, 12));
getTextEmail().setBackground(new Color(0, 255, 153));
getTextEmail().setBorder(null);
getPanel().add(getTextEmail());
getTextEmail().setColumns(10);
setSenha(new JPasswordField());
getSenha().setBounds(10, 211, 284, 23);
getSenha().addKeyListener(new KeyAdapter() {
public void keyReleased(KeyEvent e) {
validar();
}
});
getSenha().setFont(new Font("Times New Roman", Font.PLAIN, 12));
getSenha().setBackground(new Color(0, 255, 153));
getSenha().setBorder(null);
getSenha().setEchoChar('*');
getPanel().add(getSenha());
//configuração do botão
getEntrar().setFont(new Font("Arial Black", Font.PLAIN, 12));
getEntrar().setBounds(205, 270, 89, 23);
getEntrar().addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Login login = new Login();
dispose();
}
});
getPanel().add(getEntrar());
setLogo(new JLabel(""));
getLogo().setIcon(new ImageIcon(JanelaDeCadastro.class.getResource("/imagens/logoEstante.png")));
getLogo().setBounds(421, 85, 184, 170);
getContentPane().add(getLogo());
}
private JTextField textNome, textEmail;
JLabel labelNome, iconAdm, logo, labelSenha, labelEmail, cond, label;
private JPanel panel;
JSeparator separator, separator_1, separator_2;
private JPasswordField senha;
private JButton entrar = new JButton("Entrar");
// get e set
public JTextField getTextNome() {
return textNome;
}
public void setTextNome(JTextField nome) {
this.textNome = nome;
}
public JTextField getTextEmail() {
return textEmail;
}
public void setTextEmail(JTextField email) {
this.textEmail = email;
}
public JPasswordField getSenha() {
return senha;
}
public void setSenha(JPasswordField senha) {
this.senha = senha;
}
public JPanel getPanel() {
return panel;
}
public void setPanel(JPanel panel) {
this.panel = panel;
}
public JButton getEntrar() {
return entrar;
}
public void setEntrar(JButton entrar) {
this.entrar = entrar;
}
public JLabel getLabelNome() {
return labelNome;
}
public void setLabelNome(JLabel labelNome) {
this.labelNome = labelNome;
}
public JLabel getIconAdm() {
return iconAdm;
}
public void setIconAdm(JLabel iconAdm) {
this.iconAdm = iconAdm;
}
public JLabel getLogo() {
return logo;
}
public void setLogo(JLabel logo) {
this.logo = logo;
}
public JLabel getLabelSenha() {
return labelSenha;
}
public void setLabelSenha(JLabel labelSenha) {
this.labelSenha = labelSenha;
}
public JLabel getLabelEmail() {
return labelEmail;
}
public void setLabelEmail(JLabel labelEmail) {
this.labelEmail = labelEmail;
}
public JLabel getCond() {
return cond;
}
public void setCond(JLabel cond) {
this.cond = cond;
}
public JLabel getLabel() {
return label;
}
public void setLabel(JLabel label) {
this.label = label;
}
public JSeparator getSeparator() {
return separator;
}
public void setSeparator(JSeparator separator) {
this.separator = separator;
}
public JSeparator getSeparator_1() {
return separator_1;
}
public void setSeparator_1(JSeparator separator_1) {
this.separator_1 = separator_1;
}
public JSeparator getSeparator_2() {
return separator_2;
}
public void setSeparator_2(JSeparator separator_2) {
this.separator_2 = separator_2;
}
// Trabalhando em validação das informaçoes
public boolean correio() {
if (!getTextEmail().getText().contains("@") || !getTextEmail().getText().contains(".")) {
return false;
} else {
return true;
}
}
public boolean numerosDeCaractere() {
if (getSenha().getText().length() < 6) {
return false;
} else {
return true;
}
}
public void validar() {
if (getTextNome().getText().isEmpty() || getTextEmail().getText().isEmpty() || getSenha().getText().isEmpty() || correio() == false
|| numerosDeCaractere() == false) {
getEntrar().setEnabled(false);
} else {
getEntrar().setEnabled(true);
}
}
}
public class CadastroDoLivreiro extends JanelaDeCadastro {
public CadastroDoLivreiro() {
setTitle("Cadastro Do Livreiro");
setLivreiro(new Livreiro());
getLivreiro().setNome(getTextNome().getText());
}
Livreiro livreiro;
public Livreiro getLivreiro() {
return livreiro;
}
public void setLivreiro(Livreiro livreiro) {
this.livreiro = livreiro;
}
}
package Codigo;
import java.awt.EventQueue;
import javax.swing.JFrame;
import java.awt.Color;
import javax.swing.JPanel;
import java.awt.BorderLayout;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.ImageIcon;
import javax.swing.JTextField;
import java.awt.Font;
import javax.swing.SwingConstants;
import javax.swing.JSeparator;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JPasswordField;
public class Login extends BaseGeral {
private JPasswordField passwordField;
public Login() {
initialize();
}
private void initialize() {
setTitle("Login");
setBounds(100, 100, 300, 345);
setLocationRelativeTo(null);
setVisible(true);
getContentPane().setForeground(new Color(0, 0, 0));
getContentPane().setBackground(new Color(0, 255, 153));
getContentPane().setLayout(null);
JLabel iconLog = new JLabel("");
iconLog.setIcon(new ImageIcon(Login.class.getResource("/imagens/libraryIcon.png")));
iconLog.setBounds(110, 11, 56, 61);
getContentPane().add(iconLog);
JLabel labelNome = new JLabel("Nome:");
labelNome.setFont(new Font("Arial Black", Font.PLAIN, 12));
labelNome.setForeground(new Color(0, 0, 0));
labelNome.setBounds(29, 105, 48, 14);
getContentPane().add(labelNome);
JSeparator separator = new JSeparator();
separator.setForeground(new Color(0, 0, 0));
separator.setBounds(26, 152, 233, 2);
getContentPane().add(separator);
JTextField textNome = new JTextField();
textNome.setFont(new Font("Times New Roman", Font.PLAIN, 13));
textNome.setBorder(null);
textNome.setBackground(new Color(0, 255, 153));
textNome.setBounds(26, 130, 233, 20);
getContentPane().add(textNome);
textNome.setColumns(10);
JLabel labelSenha = new JLabel("Senha:");
labelSenha.setFont(new Font("Arial Black", Font.PLAIN, 12));
labelSenha.setBounds(29, 165, 48, 14);
getContentPane().add(labelSenha);
JSeparator separator_1 = new JSeparator();
separator_1.setForeground(new Color(0, 0, 0));
separator_1.setBounds(29, 211, 230, 2);
getContentPane().add(separator_1);
passwordField = new JPasswordField();
passwordField.setBorder(null);
passwordField.setBackground(new Color(0, 255, 153));
passwordField.setFont(new Font("Times New Roman", Font.PLAIN, 12));
passwordField.setEchoChar('*');
passwordField.setBounds(29, 191, 230, 20);
getContentPane().add(passwordField);
JButton botaoDestravar = new JButton("");
botaoDestravar.setIcon(new ImageIcon(Login.class.getResource("/imagens/key.png")));
botaoDestravar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JOptionPane.showInternalMessageDialog(null, getLivreiro().getNome() + "\n" + getLivreiro().getEmail());
dispose();
}
});
botaoDestravar.setBounds(110, 243, 56, 23);
getContentPane().add(botaoDestravar);
}
}
Estou tentando imprimir o nome e o email do livreiro apos apertar no botão e login mas quano faço a declaração do livreiro na janela de cadastro a saida dá num e da forma que ta da problema pode me ajudar ?