Swing Auswahl einer JComboBox für eine andere JComboBox übernehmen

piplack

Mitglied
Hallo,
ich habe 2 JComboBoxen (breite, hoehe), die auf die gleiche Auswahl zugreifen.

Ich möchte gerne, wenn in "breite" eine Auswahl getroffen wird, die gleiche Auswahl automatisch in "hoehe" angezeigt und selektiert wird. Die "hoehe" habe ich als enabled gesetzt, hier ist also grundsätzlich keine Auswahl möglich.

Ich habe es mit einem MouseListener probiert, aber leider funktioniert es nicht.
Kann mir jemand helfen?

Java:
	public void mouseClicked(MouseEvent event) 
	{	if (event.getSource() instanceof JComboBox)
		{
			
		if (((JComboBox) event.getSource()).getName() == "breite") {
				Startview1.hoehe.setEnabled( true ); 
		
				Startview1.hoehe.setSelectedItem( Startview1.breite.getSelectedItem()); 
				Startview1.hoehe.setEnabled( false );
				
				System.out.println(Startview1.breite.getSelectedItem());
				
			}
		}
	}
 
versuchs mal mit einem ItemListener an der einen ComboBox.
Da bekommst du dann mit, welcher Eintrag selektiert wurde, den holst du dir und selektierst ihn einfach ebenfalls in der anderen ComboBox.
 
ActionListener verwenden, und nicht mit getName()=="xxx" rummmachen, sondern mit getSelectedItem direkt das selektierte Item der Quell-Combo holen.

(Strings muss man mit a.equals(b) vergleichen, nicht mit a==b, aber das nur nebenbei)
 
Marco hats schon richtig gesagt, einfach mit getSelectedIndex() in der erste cb abfragen und diesen an die 2te übergeben. Anschließend die methode selectedItemAt("Index der ersten box") auf die 2te anwenden.

mfg
 
Hallo,
habe es mit dem ActionListener hinbekommen.
Vielen vielen Dank. Hätte es hiermit nie versucht.
[Java]
public void actionPerformed(ActionEvent e) {
if (e.getSource() instanceof JComboBox)
{

if (((JComboBox) e.getSource()).getSelectedItem() != null) {
Startview1.hoehe.setEnabled( true );

Startview1.hoehe.setSelectedItem( Startview1.breite.getSelectedItem());
Startview1.hoehe.setEnabled( false );

System.out.println(Startview1.breite.getSelectedItem());
}
}
}
[/Java]
 

Zurück
Oben