Utilizando eventos em jbutton

4 respostas
G

Pessoal

Sou novata na área e estou precisando de uma pequena ajuda, qual seria a melhor maneira para capturar números de uma tela com 60 botões. Alguém pode me dar uma dica???

obrigado

Gi

4 Respostas

N

Olá, giselia!

Seja mais específica em sua dúvida. Está muito confusa sua explanação.

[]'s

M

bem não sei se é isso que vc quer
mas rode o código abaixo e veja se é algo parecido com isso que vc quer

import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;



public class Teste extends JFrame {
	private Integer numeroAtual;
	
	public Teste(){
		this.setSize(600, 600);
		this.setDefaultCloseOperation(EXIT_ON_CLOSE);
		this.setTitle("Teste");
		this.setLocationRelativeTo(null);
		initComponents();
	}

	private void initComponents(){
		JPanel panel = new JPanel(new GridLayout(8, 8));
		for(int i=0; i<60; i++){
			JButton botao = new JButton(i+1+"");
			final int j = new Integer(i);
			botao.addActionListener(new ActionListener(){
				public void actionPerformed(ActionEvent e) {
					numeroAtual = j+1;
					JOptionPane.showMessageDialog(null, numeroAtual);
				}
			});	
			panel.add(botao);
		}
		this.add(panel, BorderLayout.NORTH);
	}
	
	public static void main(String[] args) {
		Teste t = new Teste();
		t.setVisible(true);
	}

}
L

Oi,

Você poderá adicionar ações para cada botão;
Você poderá criar uma inner-class que implementa as funções de mouse;
Você poderá encontrar outra maneira pois existem varias ;)

Recomendo utilizar a segunda opção. Exemplo.:

// Criando uma inner-class na sua códificação para as funções de mouse.

/**
Helper class used for mouse events. Because this class implements the interface 
MouseListener, it must provide implementations for mouseClicked methods, 
mouseEntered, mouseClicked, mousePressed and mouseReleased.
*/
private class Mouse implements MouseListener
{
     public void mouseClicked(MouseEvent e) {
			
     } 

     public void mouseEntered(MouseEvent e) {
		
     }

     public void mouseExited(MouseEvent e) {
			
     }

     public void mousePressed(MouseEvent e) {
	
	// Implementa seu código aqui.	
	System.out.println(((JButton)e.getComponent()).getText());		
     }

     public void mouseReleased(MouseEvent e) {
			
     }
}

// Instancia-la de forma "global"

Mouse io_mouse_event = new Mouse();

// Adicionar em seus botões

botao.addMouseListener(io_mouse_event);

Tchauzin!

G

obrigado pessoal era isso mesmo que eu precisava saber, é que estou tendo que criar uma tela com 60 botoes simulando um cartão da mega sena

Valeu a ajuda

Criado 5 de outubro de 2009
Ultima resposta 6 de out. de 2009
Respostas 4
Participantes 4