Einer JComboBox mittels JButton neuen Wert hinzufügen?

Newbieee

Grünschnabel
Hallo,
irgendwie bekomme ich das nicht hin. Also mein Problem:

Habe ein extends JPanel und darauf mehrere JComboBoxen.
Natürlich davor zu Übersichtszwecken jeweils ein JLabel als Zuweisung und dahinter einen JButton.

In den ComboBoxen stehen schon verschiedene Optionen drin. Doch soll der Benutzer mit dem Klicken auf den JButton daneben einen weiteren Wert hinzufügen können. Die schon eingeschriebenen Werte sollen uneditierbar sein.
Die vorhandenen Werte werden aus eine XML Datei ausgelesen, die neue sollten dann da auch eingespeichert werden. Das ist aber erstmal zweitrangig, da ich das hoffentlich nacher noch hinbekomme.

Vielleicht kann mir ja einer von euch fähigen Leuten ein bisschen Codegeschnipsel schreiben, denn ich weiss nicht, wie ich in der Methode von dem JButton noch Zugriff auf die JComboBox bekomme.

Hier nur bruchstückhaft Code:
Code:
public class Option extends JPanel {
        private JButton jButton_1 = null;
	private JLabel jLabel_1 = null;
	private JComboBox jComboBox_1 = null;
...
                this.add(jLabel_1, gridBagConstraints1);
		this.add(getJButton_1(), gridBagConstraints);
		this.add(getJComboBox_1(), gridBagConstraints2);
...
	private JButton getJButton() {
		if (jButton == null) {
			jButton = new JButton();
			jButton.setText("Einstellungen speichern");
			jButton.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					 String s = JOptionPane.showConfirmDialog(null, "Wollen Sie die geänderten Einstellungen übernehmen?", "Einstellungen speichern", JOptionPane.YES_NO_OPTION); // TODO Auto-generated Event stub actionPerformed()
/*--------------
HIER MUSS ICH ZUGRIFF AUF DIE JCOMBOBOX BEKOMMEN Damit ich den String da irgendwie reinbekomme
----------------*/
}return jButton;}
	private JComboBox getJComboBox_1() {
		if (jComboBox_1 == null) {
			jComboBox_1 = new JComboBox("1,2,3,4".split(","));
		}
		return jComboBox_1;
	}
});}

Vielen Dank im Voraus,
ein Newbieee

P.S.: Ich nutze JDK 1.5 mit Eclipse 3.1.2 und bin gerade noch bei den Ersten Schritten in der Programmierung *seufz*
 
Also, irgendwie weiß ich auch nicht... Hat an der falschen Stelle gesucht zu suchen. Habe es selbst rausgefunden. Trotzdem Danke. Klar, habe jetzt einen Button eingefügt, der dem XML Dokument den Wert hinzufügt und da dachte ich, das sollte jetzt klappen. Doch ich habe ein anderes, genauso doofes Problem:

Ich rufe mein Panel auf. Dort ist eine JComboBox und ein JButton. Der JButton fügt dem XML Dokument einen weiteren Wert (newItem) hinzu. Das ist auch alles am laufen (auch mit richtiger Codierung im XML Dokument).

Doch wenn ich jetzt

jComboBox1.revalidate();
jComboBox1.repaint();
jComboBox1.setSelectedItem(newItem);

mache, stehen immer nur noch die alten Werte in der Combobox zu Auswahl Vielleicht weiß ja einer von euch, wie ich innerhalb einer anderen Methode die JComboBox sonst akualisieren kann.
 
... Juchu!!

wenn auch vielleciht nicht auf die eleganteste Weise. Anstatt mit revalidate() und repaint() zu arbeiten, habe ich einfach

jComboBox1.addItem(newItem);
jComboBox1.setSelectedItem(newItem);

benutzt.

Manchmal ist es doch soo einfach!

kann geschlossen werden! :-)
(closed)
 
Zurück