Olá gente! Sou eu novamente…
Bom, é o seguinte:
Tenho uma classe que se chama Janela, e nela eu tenho um label e um botão, eu gostaria que quando o botão fosse clicado, ele executasse em uma outra classe que se chama Acesso, o método que se chama alteraLabel, para que este método possa executar o método setTexto da classe Janela.
Desculpem, Sei que esta confusa e meio sem sentido, pois eu poderia fazer isto direto na classe Janela, mas a idéia é realmente experimentar e aprender. Obrigado galera!
public class Janela implements ActionListener { //***classe Janela
private JFrame frmJanela;
private JLabel lblTeste;
private JButton btnTeste;
public void criaJanela() {
JFrame.setDefaultLookAndFeelDecorated(true);
frmJanela = new JFrame("");
frmJanela.setSize(130, 100);
frmJanela.setLocation(280, 280);
frmJanela.setLayout(null);
lblTeste = new JLabel("Teste de acesso");
lblTeste.setBounds(10, 10, 150, 20);
frmJanela.getContentPane().add(lblTeste);
btnTeste = new JButton("teste");
btnTeste.setBounds(10, 40, 100, 20);
btnTeste.addActionListener(this);
frmJanela.getContentPane().add(btnTeste);
frmJanela.setVisible(true);
}
/*
* Abaixo esta o método para alterar, mas não consigo alterar o texto
* pois sempre da erro.
*/
public void setTexto(String novoTexto){
this.lblTeste.setText(novoTexto);
}
public void actionPerformed(ActionEvent e){
if(e.getSource() == btnTeste){
Acesso executa = new Acesso();
executa.alteraLabel(); //***** Aqui eu tento executar o método alteraLabel
//da classe Acesso.
}
}
public static void main(String args[]){
Janela executa = new Janela();
executa.criaJanela();
}
}
//*** abaixo a classe acesso
public class Acesso {
public void alteraLabel(){
Janela nova = new Janela();
nova.setTexto("Alterado");
}
}
É que envolve bastante coisa neste exemplo. Pelo que senti no seu código você está iniciando em JAVA correto? procure pesquisar sobre os assuntos relacionados no exemplo abaixo. Qualquer coisa é só perguntar. São 3 arquivos ok?