Boa tarde galera.
Eu pretendo colocar uma label de “Bom dia, usuário” na página principal do programa logo após o login, sendo que nome viria do field referente ao login.
O problema é que não consigo fazer funcionar… Todas as formas que tentei a variável vai para a ViewHome como null… Como posso consertar?
Como estou iniciando no Java (e na programação em si), tenho apanhado bastante
VIEWLOGIN
public class ViewLogin extends javax.swing.JFrame {
public String login;
public ViewLogin() {
initComponents();
setIcon();
colorOverlay.setBackground(new Color(51, 51, 51, 155));
}
private void btnLoginMousePressed(java.awt.event.MouseEvent evt) {
UserDAO dao = new UserDAO();
if(dao.checkLogin(usrField.getText(), passField.getText())){
new ViewHome().setVisible(true);
login = usrField.getText();
this.dispose();
}else{
new ViewLoginError().setVisible(true);
}
}
VIEWHOME
public class ViewHome extends javax.swing.JFrame {
ViewLogin user = new ViewLogin();//Tentativa desesperada de DEBUG
public ViewHome() {
initComponents();
setIcon();
time();
System.out.println(user.login); //Tentativa desesperada de DEBUG
colorOverlay.setBackground(new Color(51, 51, 51, 155));
}
private void time(){
//LocalTime now = LocalTime.parse("18:00:00"); //debug
LocalTime now = LocalTime.now(Clock.systemDefaultZone());
int hora = now.getHour();
if(hora < 12){
lblTime.setText("Bom dia, " + user.login);
} else if (hora < 18) {
lblTime.setText("Boa tarde, " + user.login);
} else{
lblTime.setText("Boa noite, " + user.login);
}
}
Peço desculpas pela pergunta provavelmente estupida, mas não vi outra alternativa…
Agradeço desde já!

