Ich habe 2 ComboBox(en) und in beide wird mit einer fill-Methode Labels, mit Strings, aus einer SQL Datenbank geladen. Genauer gesagt werden mit "SELECT *" alle Spalten ausgewählt, aber nur die LABEL(s) aus entsprechender Spalte als String Werte in die ComboBox(en) geladen.
Jetzt möchte ich folgendes errreichen: Wenn man in der ersten ComboBox ein Wert auswählt, der nicht dem ersten entspricht ("Bitte auswählen"), dann soll die andere ComboBox auf den ersten Wert ("Bitte auswählen") springen. Das Ganze hat den Hintergrund, dass man nicht in beiden ComboBox(en) einen Wert auswählen soll, da beide Boxen die selben Variablen mit Werten belegen. Im nicht Sehbaren ist das egal, da die Werte vom letzten Action Performed einfach überschrieben werden. Ich möchte jetzt das Ganze visuell unterstützen, so dass der Nutzer ganz klar sehen kann was die zu letzt gesetzte ComboBox war.
Also schematisch: Wähle ich in ComboBox 1 etwas aus, was nicht dem Index 0 entspricht, dann soll bei ComboBox 2 der Index auf 0 gesetzt werden und andersrum. Das führt dazu das man nur einen Wert in beiden ComboBox(en) gleichzeitig auswählen kann - und genau so will ich es.
Ohne SQL und Datenbank Anbindung geht das ganz leicht, mit kommen bei mir jedoch Fehler...
.setSelectedIndex(0); führt dazu, dass die Datenbank gelockt wird.
.setModel("Bitte auswählen"); führt zu dem Fehler: String cannot be converted to ComboBoxModel<String>
Wie kann man das möglichst elegant lösen? Bzw. habt ihr mich verstanden?
Jetzt möchte ich folgendes errreichen: Wenn man in der ersten ComboBox ein Wert auswählt, der nicht dem ersten entspricht ("Bitte auswählen"), dann soll die andere ComboBox auf den ersten Wert ("Bitte auswählen") springen. Das Ganze hat den Hintergrund, dass man nicht in beiden ComboBox(en) einen Wert auswählen soll, da beide Boxen die selben Variablen mit Werten belegen. Im nicht Sehbaren ist das egal, da die Werte vom letzten Action Performed einfach überschrieben werden. Ich möchte jetzt das Ganze visuell unterstützen, so dass der Nutzer ganz klar sehen kann was die zu letzt gesetzte ComboBox war.
Also schematisch: Wähle ich in ComboBox 1 etwas aus, was nicht dem Index 0 entspricht, dann soll bei ComboBox 2 der Index auf 0 gesetzt werden und andersrum. Das führt dazu das man nur einen Wert in beiden ComboBox(en) gleichzeitig auswählen kann - und genau so will ich es.
Ohne SQL und Datenbank Anbindung geht das ganz leicht, mit kommen bei mir jedoch Fehler...
.setSelectedIndex(0); führt dazu, dass die Datenbank gelockt wird.
.setModel("Bitte auswählen"); führt zu dem Fehler: String cannot be converted to ComboBoxModel<String>
Wie kann man das möglichst elegant lösen? Bzw. habt ihr mich verstanden?