# Index eines Elements einer ArrayList abfragen



## gamebreiti (21. Okt 2014)

Hallo liebe Kommunity,

leider konnte ich keine passende Lösung im Forum finden...

ich habe eine ArrayList mit ToggleButton gefüllt...

diese werden schön auf ein JPanel gezeichnet welches in einem JFrame liegt.

Ich möchte nun einen beliebigen JTogglebutton anklicken und diese Visible(false) setzen.
dieser TB oder viel mehr ein neuer TB mit den gleichen Bild soll nun in ein 2tes Panel gezeichnet werden.

Meine  Idee ist irgenwie an den Index des durch ae.getSource erhaltenen JToggleButton[x] zu kommen.

das Bild ist ein ImageIcon , KEIN Icon ... da ich es mit der überschriebenen paintmethode eines weiteren JPanels zeichnen lassen..

Wie kann ich das schön und einfach realisieren...


HILFE !!!!!!!

hier mein Code
	
	
	
	





```
public void setButtonBenutzdef(JPanel container,int anzahl){
	
		
	 	for(int i = 0;i < anzahl;i++){	
	 		container.setLayout(null);
	 		benutzer[i] = new JToggleButton(Integer.toString(i));
	 		benutzer[i].setName(benutzer[i].getText());
	 		benutzer[i].setActionCommand("benutzer" + benutzer[i].getName());
	 		benutzer[i].addActionListener(this);
	 		benutzer[i].setLayout(null);
	 		if(i<10){
	 			ImageIcon bild = (ImageIcon)burghof[i];
	 			benutzer[i].setDisabledIcon(bild);
	 			int breite = (bild.getIconWidth()/KLEIN);
	 			int hoehe = (bild.getIconHeight()/KLEIN);
	 			benutzer[i].add(new Leinwand(0, 0, bild.getIconWidth(), bild.getIconHeight(), bild, KLEIN));
	 			benutzer[i].setBounds(10+(breite*(i%10)),10+(hoehe*(i/10)),breite,hoehe);
		 		}
	 		if(i>=10 && i<20){
	 			ImageIcon bild = (ImageIcon)feldherr[i-10];
	 			int breite = (bild.getIconWidth()/KLEIN);
	 			int hoehe = (bild.getIconHeight()/KLEIN);
	 			benutzer[i].add(new Leinwand(0, 0, bild.getIconWidth(), bild.getIconHeight(), bild, KLEIN));
	 			benutzer[i].setBounds(10+(breite*(i%10)),10+(hoehe*(i/10)),breite,hoehe);
		 		}
	 		if(i>=20 && i<30){
	 			ImageIcon bild = (ImageIcon)unterstadt[i-20];
	 			int breite = (bild.getIconWidth()/KLEIN);
	 			int hoehe = (bild.getIconHeight()/KLEIN);
	 			benutzer[i].add(new Leinwand(0, 0, bild.getIconWidth(), bild.getIconHeight(), bild, KLEIN));
	 			benutzer[i].setBounds(10+(breite*(i%10)),10+(hoehe*(i/10)),breite,hoehe);
		 		}
	 		if(i>=30 && i<40){
	 			ImageIcon bild = (ImageIcon)wissenschaft[i-30];
	 			int breite = (bild.getIconWidth()/KLEIN);
	 			int hoehe = (bild.getIconHeight()/KLEIN);
	 			benutzer[i].add(new Leinwand(0, 0, bild.getIconWidth(), bild.getIconHeight(), bild, KLEIN));
	 			benutzer[i].setBounds(10+(breite*(i%10)),10+(hoehe*(i/10)),breite,hoehe);
		 		}
	 		if(i>=40 && i<49){
	 			ImageIcon bild = (ImageIcon)abenteuer[i-40];
	 			int breite = (bild.getIconWidth()/KLEIN);
	 			int hoehe = (bild.getIconHeight()/KLEIN);
	 			benutzer[i].add(new Leinwand(0, 0, bild.getIconWidth(), bild.getIconHeight(), bild, KLEIN));
	 			benutzer[i].setBounds(10+(breite*(i%10)),10+(hoehe*(i/10)),breite,hoehe);
		 		}
	 		container.add(benutzer[i]);
	 	}
	}
```


```
else if(ae.getActionCommand().startsWith("benutzer")){
		//TODO
		benutzerAuswahl.setVisible(true);
		((JToggleButton)ae.getSource()).setVisible(false);
		// Hier stecke ich fest!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
               //forSchleife????? durch Array iterieren aber wie i abfragen .... VerständnisProblem
		okayEr.setVisible(true);
	}
```


----------



## Harry Kane (21. Okt 2014)

```
for(JToggleButton b: benutzer){
    //mach was
}
```
Das hat mit Spielen nix zu tun, sondern gehört ins Anfängerforum.


----------

