Boa tarde galera, sou novo aqui e também iniciante em programação JAVA.
Estou desenvolvendo um jogo para a faculdade, onde tenho uma tela inicial onde o jogador digita seu nome, ao clicar no botão entrar, ele entra em uma tela de boas vindas, porém eu gostaria de estar pegando o nome(TXTField) do jogador e estar setando na tela de boas vindas, como um tipo de saudação em um JLabel. Já tentei de várias maneiras, porem sem êxito.
Segue abaixo o ultimo método utilizado:
Tela Inical -->
public void enviarTexto(){
String vai = txtJogador.getText().trim();
BemVindo outra = new BemVindo();
outra.setLbl(vai);
}
Evento do botão entrar:
private void btnEntrarActionPerformed(java.awt.event.ActionEvent evt) {
BemVindo telaInicio = new BemVindo();
String jogador;
jogador = txtJogador.getText();
if(jogador.trim().isEmpty()){ // Verifica se o campo esta vazio, tabulado ou com espaço
JOptionPane.showMessageDialog(null,“Por favor, digite um nome para o jogador”);
} else {
enviarTexto();
telaInicio.setVisible(true);
}
}
TELA BEM VINDO
public void setLbl(String a){
lblJogador.setText(a); // Seta o valor nome no JLabel
}
Não surge nenhum erro e executa normalmente, porém não seta o valor na outra tela. Como posso resolver ?
Você tem que fazer o seguinte:
Defina o jLabel da tela de bem vindo como static e public.
BemVindo telaInicio = new BemVindo();
telaInicio.jLabel.setText(“Seja bem vindo” +txtJogador.getText()); //Assim você já seta o texto antes do frame 2 esta visível.
Você tambem pode fazer uma referencia a classe assim: BemVindo.jLabel.setText(“Seja bem vindo” +txtJogador.getText());
telaInicio.setVisible(true);
Nossa, tão simples e eu complicando.
Valeu amigo, deu certo com o segundo método.
Ainda sou novo nessa área, mas cada dia que aprendo uma coisa diferente me motiva cada vez mais.
Agora mesmo estou pesquisando sobre como adicionar um cronometro em meu jogo kkk
Até mais!
Um brevíssimo resumo.
A utilização do modificador static, refere-se a “coisas que pertencem à classe”.
A utilização indiscriminada do static é problemática.
“Coisas” que pertencem ao objeto, sejam elas métodos ou atributos, não devem conter o modificador static.
Para comunicação entre objetos, faça bom uso dos métodos, sejam eles estáticos ou não, embora em alguns casos seja possível realizar a modificação de um atributo diretamente principalmente quando possui o modificador public, em menor grau package, etc, pois depende da restrição de acesso imposta.
Procure saber mais sobre o modificador static.
Para fins de degustação, veja:
Opa, li o artigo e agora sei onde e quando utilizar o modificador static.
Muito obrigado, e não pare, informação é bom e eu gosto. kkkk
Até!