galerinha q eu adoro. “ajuda eu”…
fiz um programinha básico jFrame ele recebe valor da jTextfild e exibe junto com mensagem na tela de console e após alguns segundo exibe outra isso após um único click no botão ate ae ok.
mas quero exibir a mensagem na Jlabel e não na tela de console como passo os valores para la no meu método run?
//
JButton btn = new JButton("Confirmar!");
public JLabel lbl = new JLabel();
JTextField txt = new JTextField();
public int num;
Banco b1 = new Banco();
//
@Override
public void actionPerformed(ActionEvent e) {
// JOptionPane.showMessageDialog(null, "Informaçao Incorreta!", "ERRO!",
// JOptionPane.ERROR_MESSAGE);
String agrumento = this.getTxt().getText();
// passa o texto digitado na JTF para as variaves do metodo recebeTexto!
b1.recebeTexto(agrumento);
b1.start();
}
public JButton getBtn() {
return btn;
}
//
String atendente;
boolean repetir = true;
String nome;
public void recebeTexto(String tx) {
this.nome = tx;
}
public void run() {
this.atendente = ("Bom dia " + nome + " Como vai?");
System.out.println(atendente);
try {
sleep(3000);
this.atendente = (nome + " Voce posui R$" + banc + " depositados!");
System.out.println(atendente);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
Você pode criar um método para retornar o seu jLabel ou tornar a variável do jLabel como static ou então você tendo uma instancia da classe você pode acessar normalmente a variavel.
Jeito 1:
public jLabel getLabel(){
return label;
}
Jeito 2:
public static JLabel lbl = new JLabel();
ClasseEmQueEstaAVariavel.lbl.setText...
Jeito 3:
ClasseDoLabel c = new ClasseDoLabel();
c.lbl.setText...
Indico você dar uma lida sobre Orientação de Objetos, é meio que a base para você progredir em java, tais como essas questões de metódos, instancias, parametros, classe, etc.
Você pode pegar uma instância da classe Start em sua classe Banco pelo construtor.
public class Banco {
private final Start start;
public Banco(Start start) {
this.start = start;
}
//e no seu método run() vc usa start.getLbl().getText()
}