Swing Auf RadioButtons in JPanel zugreifen

Jonny2002

Mitglied
Hi hab mal wieder kurz ne frage:

ich hab in mein JPanel mehrere RadioButtons eingefügt (gruppier) und jetzt möchte ich in einer anderern Methode auf die RadioButtons zugreifen. Und genau da hängts weiß villeicht jemand ne lösung??

Schon mal danke im vorraus
 
wie ich die Buttons auswerte is klar aber ich möchte auf die Buttons in dem JPanel zugreifen in etwa so
Java:
//jp ist das JPanel in dem die Radio Buttons stehen
JRadioButton jb = jp.(die methode die ich nicht weiß);
 
Hmm, wenn du die RadioButtons in dem Panel als Objektvariablen angelegt hast, kannst du in einer Methode innerhalb des Panel auch darauf zugreifen. Wenn du in einer Methode in einer anderen Klasse/Objekt darauf zugreifen willst, musst du diesem Objekt die RadioButtons bzw. die Group übergeben. Oder verstehe ich dein Problem falsch?

Edit: Oder du schreibst dir in dem Panel eine Methode, welche dir die RadioButtons zurückgibt, z.B.:
Java:
public JRadioButton getRadioButton() {
   return rb1;
}
Dann bekommst du mit
Code:
JRadioButton rb = jp.getRadioButton();
dort den RadioButton geliefert...
 
Zuletzt bearbeitet von einem Moderator:
Na ja, so wie ich das oben ergänzt habe. Wenn du mit der Methode alle RadioButtons zurückgeliefert haben möchtest, könntest du diese in ein Array stecken. Oder die ButtonGroup zurückliefern.
 
Was klappt denn an meinem Beispiel nicht? Du hast die RadioButtons in dem JPanel. Wenn du dann dort im JPanel eine Methode reinschreibst, die dir entweder einzelne RadioButtons oder ein RadioButton-Array oder die Buttongroup zurückliefert, dann kannst du doch dort, wo du dein JPanel angelegt hast oder Zugriff darauf hast, dir die RadioButtons mit dieser MEthode holen. Vielleicht solltest du noch mehr Code liefern, damit dein Problem klarer wird...
 
Also ich hab eine ArrayList ajp. In dieser sind meine JPanels.
In den JPanels wiederrum sind meine radio Buttons.
und ich möchte jetzt von den einzelnen JPanels die RadioButtons (in einer schleife)
Haben um dann mit dem ActionListener die Werte auslesen zukönnen. Was in etwa so aussieht:

Java:
for(JPanel jp: ajp)
{
JRadioButton jb = jp.(die Methode mit der ich den ausgewählten Radio button bekomme bzw. seinen Wert);
}
 
Na, dann pack doch in jedem Panel die RadioButtons in einen Array, schreib in jedes Panel eine Methode, welches dir genau diesen Array dann zurückliefert. Dann gehst du die Schleife mit den Panels durch und rufst jeweils die Methode auf, bekommst ein Array mit RadioButtons zurück und kannst diese dann auslesen bzw. den Wert holen.
 
Zuletzt bearbeitet von einem Moderator:
Hab herausgefunden wie das jetzt geht mit dem RadioButton. Get über die methode: get component von JPanel. Geht aber nur wenn man weiß welche der Componenten au dem JPanel ein RadioButton ist.
 

Zurück
Oben