Olá pessoal, estou com problemas. Estou trabalhando um montador de telas apartir de sua descrição em formato XML. Apartir desse XML ele irá montar a tela (JFrame) e todo os outros componentes presentes na mesma, inclusive tabelas e eventos em botões…
o problema está justamente aí… como adicionar esses eventos aos botões dinamicamente. Para melhor entendimento de todos segue abaixo o XML para montagem da tela, o método que cria os botões, um MouseListener e um ESBOÇO de como a função que vai adicionar o evento ao botão poderia (ou deveria) ficar.
Arquivo XML:
<TForm id="frmPrincipal" label="Teste XML - Form Dinâmico" pai="">
<TEdit id="edtNome" label="Nome do usuario:" default="João da Silva"/>
<TEdit id="edtEnd" label="Endereço:" default="Rua XXXXXXXXX"/>
<TButton id="btnFecha" label="Fechar">
<Evento tipo="CLICK" action="close"/>
</TButton>
</TForm>
Método que cria os botões:
// Cria um JButton setando seus atributos
public JButton criaButton(String id, String label, int largura, int altura, int pos_x, int pos_y) {
JButton button = new JButton(label);
button.setName(id);
button.setHorizontalAlignment(0);
button.setBounds(pos_x, pos_y, largura, altura);
return button;
}
MouseListener (evento para fechar a tela):
MouseListener close = new MouseAdapter() {
public void onMouseClicked(MouseEvent evt) {
System.exit(0);
}
};
dessa forma se vincula o evento ao botão:
btn.addMouseListener(evento);
mas gostaria de algo tipo assim, para poder setar o evento ao botão:
public void eventoBTN(JButton btn, MouseListener evento){
btn.addMouseListener(evento);
}
será que alguem pode me ajudar?
agradeço a atenção