Pessoal,
Tenho um JFrame e nele um JPanel. Nesse JPanel existe um JLabel e um método privado à classe JPanel (feito no Netbeans e não tem como deixar público) que é o código executado quando o usuário clica nesse JLabel.
Aí está o método privado:
private void anterior(java.awt.event.MouseEvent evt) {
try {
Citacao citacao = CitacaoDAO.recuperarAAnterior(CitacaoDAO.recuperarAAtual());
Autor autor = AutorDAO.recuperarPorCitacao(citacao);
this.lblTexto.setText(Formatador.formatarUsandoHtml(citacao.getTexto(), autor.getNome()));
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Erro ao procurar a nota anterior!", "Erro!", JOptionPane.ERROR_MESSAGE);
}
}
Num método chamado initComponents (que o Netbeans cria e que não pode ser alterado), o método privado é adicionado ao listener do JLabel:
lblAnterior.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
anterior(evt);
}
});
Note que o JLabel chamado lblAnterior é local ao método initComponents (ou seja, depois da execução desse método, essa variável deixa de existir e eu não tenho mais como acessá-la diretamente).
De uma outra classe qualquer (que tem acesso a instância do JFrame), eu preciso chamar esse evento via código Java. Como posso fazer isso? Eu consigo recuperar o JPanel, chamado Conteudo, sem problemas através de
mas a partir daí eu não sei como fazê-lo.
Agradeço qualquer sugestão.
Um abração.