Com o netbeans criei varios menus usando jmenubar, jmenu e jmenuitem.
Com eles ativei varios eventos actionPerformed para chamar minhas janelas.
Agora criei dinamicamente varios botões dentro de um jtoolbar que seria os atalhos para estes menus. Eu preciso então que a cada botão criado dinamicamente seja linkado o evento actionPerformed do jmenuitem por exemplo.
Eu sei que se eu executar SairactionPerformed(); eu consigo abrir o evento do menu mas dinamicamente eu não sei como linkar no momento de criar o botão para chamar este SairactionPerformed, alguém pode me explicar?
Cara, é só você criar o actionPerformed(evt) do seu JButton quando o estiver criando dinamicamente…
Tipo assim:
//No método de criação de cada JButton você adiociona...
JButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
JButton1ActionPerformed(evt);
}
});
// Agora é só criar o método actionPerformed de cada JButton...
private void JButton1ActionPerformed(java.awt.event.ActionEvent evt) {
itemSairActionPerformed(evt);
// ou simplesmente
itemSair.doClick();
System.out.println("Pronto! Agora consegui atribuir o actionPerformed(evt) dinamicamente, rsrsrs!!!");
}
É isso aí!
Espero ter ajudado!
Um abraço!
Obrigado pela ajuda, com base neste exemplo a primeira parte eu realmente acho que da certo pois eu estou criando o botão dinamicamente em tempo de execução do programa mas na segunda parte eu acho que não funcionaria;
//No método de criação de cada JButton você adiociona…
JButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
JButton1ActionPerformed(evt);
}
});
No caso em tempo de execução como eu escreveria no código a função abaixo?
Eu acredito que na primeira parte eu teria que fazer o itemSairActionPerformed(evt) ou o itemSairdoClick()
Mas eu tenho a pior das duvidas pois no caso eu não sei o nome itemSair pode ser itemA itemB na verdade eu tenho eles num Vector então eu teria que tentar algo como Vector.get(0).doClick() será que funciona?
// Agora é só criar o método actionPerformed de cada JButton…
private void JButton1ActionPerformed(java.awt.event.ActionEvent evt) {
itemSairActionPerformed(evt);
// ou simplesmente
itemSair.doClick();
System.out.println(“Pronto! Agora consegui atribuir o actionPerformed(evt) dinamicamente, rsrsrs!!!”);
}