Retornar (indice, texto do botao) de um vetor de botoes ao clicar

Amigos tem jeito de retornar o indice e o texto do botao desse vetor de botoes? como no codigo abaixo?
esses botoes vao variar o estatus entre aberto e fechado que sera´indicado por duas imagens.
tem jeito meus queridos?

[code]public class Mesas extends JFrame implements ActionListener {

private JButton [] Botoes   = new JButton[101];
//private int	 [] Vetor	= new int[100];
private JPanel grid = new JPanel();
Container cp;
    private int mesas=0;
    private String situacao="F";

public Mesas() {

	setSize(950, 462);
	setTitle("MESAS");
	centerJFrame(this);
	setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	setResizable(false);

	cp = getContentPane();
	cp.setLayout(null);

            ImageIcon icone;

            if (situacao.equals("A")){
              icone = new ImageIcon("/sistbar/icones/Aberto.png");
            }else{
              icone = new ImageIcon("/sistbar/icones/Fechado.png");
            }
           

	grid.setBounds(20, 20, 900, 400);
	grid.setLayout(new GridLayout(10, 5, 2, 2));


	for(int i=1;i<101;i++) {
                mesas ++;
		Botoes[i] = new JButton(String.valueOf(mesas),icone);
		Botoes[i].addActionListener(this);
		Botoes[i].setFocusable(false);
		grid.add(Botoes[i]);
	}

	
	cp.add(grid);
	
}

    private void verificaSituacao(){

    //verificar situação das mesas no banco 


    }

private void centerJFrame(JFrame frame) {

	Dimension paneSize= frame.getSize();
	Dimension screenSize= frame.getToolkit().getScreenSize();
	frame.setLocation( (screenSize.width - paneSize.width) / 2, (screenSize.height - paneSize.height) / 2);

}
   
public void actionPerformed(ActionEvent e) {
       String indice = null;
       indice= Botoes[100].getText();

//nesse caso aqui eu retorno o indice pré definido, preciso em tempo de execução ao clicar
JOptionPane.showMessageDialog(rootPane, "Voçe clicou no índice: "+ indice);

}


public static void main(String args[]) {

	Mesas app = new Mesas();
	app.show();

}

}[/code]

cara,

no seu metodo actionPerformed, vc vai ter que fazer um for na lista de botoes e verificar qual é igual ao e.getSource()(esse metodo retorna o objeto que executou o listener).

t+

[quote=alissonvla]cara,

no seu metodo actionPerformed, vc vai ter que fazer um for na lista de botoes e verificar qual é igual ao e.getSource()(esse metodo retorna o objeto que executou o listener).

t+[/quote]

Deus te abençoe meu querido!

consegui como vc falou! obrigado.

         [code] for(int i=1;i<101;i++) {
		if(e.getSource() == Botoes[i]) {
                         Botoes[i].setText("X");
                             Botoes[i].setEnabled(false);


            if (situacao.equals("A")){
                Botoes[i].setIcon(icone = new ImageIcon("/sistbar/icones/Aberto.png"));

            }else{
           Botoes[i].setIcon(icone = new ImageIcon("/sistbar/icones/Fechado.png"));

            }
                             Botoes[i].setIcon(icone);

                    }
          }[/code]

boaa,

cara so postar o seu codigo aqui para ficar mais elegante.

for (JButton botao : Botoes) {
			if (botao == e.getSource()) {
				botao.setText("X");
				botao.setEnabled(false);

				if (situacao.equals("A")) {
					botao.setIcon(new ImageIcon("/sistbar/icones/Aberto.png"));

				} else {
					botao.setIcon(new ImageIcon("/sistbar/icones/Fechado.png"));

				}
				break;
			}
		}

marque o post como resolvido

t+