Duvida, fazer uma condiçao se o jButton for pressionado[resolvido]

Bom dia a toooodos e todas, bom galera eu to tentando criar uma condiçao em cima de um jButton queria saber se tem como, por exemplo:

se o jButton “OK” for pressionado exibe um JOptionPane se nao exibe um outro JOptionPane, so que nao tenho ideia pra fazer essa condiçao.

[quote=evertonsilvagomesjava]Bom dia a toooodos e todas, bom galera eu to tentando criar uma condiçao em cima de um jButton queria saber se tem como, por exemplo:

se o jButton “OK” for pressionado exibe um JOptionPane se nao exibe um outro JOptionPane, so que nao tenho ideia pra fazer essa condiçao.

[/quote]

public void actionPerformed(ActionEvent arg0) { if (arg0.getSource() == bOk){ JOptionPane.showMessageDialog(null, "OK"); } else if (arg0.getSource() == bOutro){ JOptionPane.showMessageDialog(null, "Outro"); } }

sua classe deve implementar a interface ActionListener e vc deve colocar essas linhas em algum canto.

bOk.addActionListener(this); bOutro.addActionListener(this);

Todos os componentes Swing tem algum tipo de evento associado a aqueles componente. No caso do botão você pode adicionar um evento de MouseClick. Logo quando o botão receber o Click exiba seu frame. Um exemplo básico seria:

 b1 = new JButton();
 b2 = new JButton();
 b1.addActionListener(this);
 b2.addActionListener(this);

public void actionPerformed(ActionEvent e) {
    b1.setEnable(false);
    b2.setEnable(false);
} 

Este link pode ser de grande ajuda http://java.sun.com/docs/books/tutorial/uiswing/components/button.html

Flw

Acho que uma alternativa melhor é usar um actionlistener diferente por botão:

[code]bOk.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
JOptionPane.showMessageDialog(null, “OK”);
}
});

bOutro.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
JOptionPane.showMessageDialog(null, “Outro”);
}
}); [/code]

Isso evita o switch. Se várias uma ação for dispara por vários meios diferentes, considere o uso da classe Action on lugar da ActionListener.

mas tipo eu to construindo os botoes pela paleta do netbeans pra inserir os codigos agora teria que ser no initComponents?

nem sei, eu uso eclipse heheheh

kkk to meio perdido eu tb usava o eclipse mas nao achei plugin pra criar interface ai to usando netbeans mas to perdidao aqui kkk.

[2] heheheh

vcs recomendam algum software ou pluginn pro eclipse pra criar interface? pq eu tb prefiro o eclipse.

cara, essa é uma pergunta muito complexa… existem inclusive alguns tópicos aqui… eu já tentei instalar mas nao consegui… parece que tem q instalar algo antes, não entendi muito bem mas acabei abrindo mão e fiz do jeito mais difícil mesmo hehehe

Eu usava o Visual Editor, mas o editor Matisse, do Netbeans, é muito melhor.

mas no seu caso vc cria tudo na mao no eclipse Vini?

Não, usava o Visual Editor.
http://www.eclipse.org/vep/

e agora vc faz mais nada n? agora so manda os outros ne kkk

Não, é que agora eu programo em C# para web. Por isso, não uso mais o VE.

hummm pode cre

Vini ou alguem que entenda do assunto, tem como eu saber se é a segunda vez vez que meu botao esta sendo acionado?

Ahh na pior das hipoteses coloca um contador :slight_smile:

[OBS]
Ahhh, no netbeans quando você estiver no design do seu formulario deve ter um barra de propriedades. Dai é so olhar os eventos atravez desse inspector e configura-lo graficamente. Toda ferramenta RAD tem isso, num é possível que o NetBeans não tenha isso! So ficar de olho!

eliezer o problema e que eu preciso implementar no codigo se o botao esta sendo ascionado a segunda vez ele vai me fazer uma outra coisa

Entao, coloque um contador!!


int count = 0;

bOk.addActionListener(new ActionListener() {  
    public void actionPerformed(ActionEvent arg0) {    
       if(count<=0) {
           JOptionPane.showMessageDialog(null, "Minha primeira vez");  
       } else {
           JOptionPane.showMessageDialog(null, "Já passei por aqui "+ count + " vezes.");  
       }
        count ++;
    }  
});