Adicionar Componente à palheta do NetBeans

3 respostas
Juliano_Pedroso_da_S

Estou tentando criar meus próprios componente e adicioná-los à palheta do NetBeans, já consegui criar um componente com 5 botões e adicioná-lo à palheta.
A idéia é reutilizar este componente várias vezes, mas o problema é com o evento de cada botão, não consigo adicionar um evento separado para cada botão na classe em que utilizo este componente, sei que é possível criar os eventos dentro da classe do componente mas ai eu limitaria a reutilização deste.
Resumindo preciso adicionar um evento para cada botão na classe em que estou utilizando o componente com os 5 botões.
Se algém entendeu e tiver uma solução e puder ajudar obrigado.

Juliano…

3 Respostas

davidbuzatto

Cria um método para kda botão, quando utilizado ese método o evento é registrado. Vc passa como parâmetro o tipo de ouvinte q vc quer, como por exemplo um ActionListener

Falow!

Juliano_Pedroso_da_S

Pois é consegui adicionar um evento diferente para cada botão, criei uma lista de Eventos na classe onde estavam os botões passando um ActionEvento e uma String para setar o botão que recebe o evento.
E na janela que uso os botões eu passo o evento AncestorEvent para o componente inteiro e com a String setando o botão que quero passar o evento.

// Classe onde estão os botões, classe onde está o Bean adicionado à palheta

protected List listeners = new ArrayList();

private void jBIncluirActionPerformed(java.awt.event.ActionEvent evt) {

ActionEvent e = new ActionEvent(this, 1, “Incluir”);

performEvent(e);

}
private void jBAlterarActionPerformed(java.awt.event.ActionEvent evt) {                                          
    ActionEvent e = new ActionEvent(this, 2, "Alterar");
    performEvent(e);
}                                         

private void jBExcluirActionPerformed(java.awt.event.ActionEvent evt) {                                          
    ActionEvent e = new ActionEvent(this, 3, "Excluir");
    performEvent(e);
}                                         

private void jBLocalizarActionPerformed(java.awt.event.ActionEvent evt) {                                            
    ActionEvent e = new ActionEvent(this, 4, "Localizar");
    performEvent(e);
}                                           

private void jBFecharActionPerformed(java.awt.event.ActionEvent evt) {                                         
    ActionEvent e = new ActionEvent(this, 5, "Fechar");
    performEvent(e);
}                                        


public void addActionListener(ActionListener listener) {
    listeners.add(listener);
}

public void performEvent(ActionEvent evt) {
    for (ActionListener listener: listeners) {
        listener.actionPerformed(evt);
    }
}

//Classe onde uso o componente dos botões que já está na palheta

//Atribui um AncestorAdded para o componente inteiro

private void jBotoesAncestorAdded(javax.swing.event.AncestorEvent evt) {

//Método onde é passado o evento e a String setando qual botão recebe o evento

eventos();

}
//retorna qual botão do componente foi acionado

public void eventos(){

jBotoes.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

Integer idBt = e.getID();

switch(idBt){

//Botão Incluir

case 1:

tarCtrl.setConstante(1);

setConstante(1);

incluir();

//showPesquisaTarefa();

break;

//Botão Editar

case 2:

if(constante == 4){

setConstante(2);

salvar();
}else{
                        tarCtrl.setConstante(2);
                        setConstante(2);
                        showPesquisaTarefa();
                    }
                    break;
                    //Botão Excluir
                case 3:
                    if(constante == 4){
                        deletar();
                    }else{
                        tarCtrl.setConstante(3);
                        setConstante(3);
                        showPesquisaTarefa();
                    }
                    break;
                    //Botão Localizar
                case 4:
                    tarCtrl.setConstante(4);
                    setConstante(4);
                    showPesquisaTarefa();
                    break;
                    //Botão Fechar
                case 5:
                    sair();
                    break;
                default:
                    break;
            }
        }
    });
}
andredeividi

Da uma olhada nesse link
no começo a duvida era como desenvolver um controle de nivel de usuario.
mas acaba na sua duvida.

http://www.guj.com.br/posts/list/60146.java

Criado 2 de maio de 2007
Ultima resposta 28 de mai. de 2007
Respostas 3
Participantes 3