Ajuda com JFrame

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

  • JFrame Base Geral

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);
}

}

  • Janela de cadastro

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);
	}
}

}

  • Cadastro de livreiro

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;
}

}

  • Login

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 ?