Hallo zusamnen,
ich habe folgendes Problem:
ich habe eine JTable Komponenten die im Moment aus 3 Spalten besteht:
- 1 Name
- 2 Combobox
- 3 Combobox
Die erste Combobox ernthält in jeder Reihe dieselben Werte (man kann natürlich in jeder Reihe einen anderen Wert auswählen.)
Wählt nun der Benutzer in der zweiten Spalte einen Wert aus, soll sich die Combobox in der dritten Spalte, gleiche Reihe mit Werten aus einer Datenbank füllen, d.h. je nach dem was in Spalte 2 ausgewählt wurde, sollen sich die enthaltenen Werte der Combobox in derselben Reihe ändern.
Ich habe für jede Spalte zwei verschiedene Comboboxtypen. Beide füge ich mit zwei verschiedenen Zelleditoren in die entsprechende Spalte in der Tabelle ein, wie z.B.:
Ich habe schon versucht, über einen TableModelListener abzufangen, wann sich der Wert in einer Combobox der zweiten Spalte ändert und dann entsprechend den Zelleditor aus der dritten Spalte zu bekommen und diesen dann anzupassen, aber dann ändern sich die Werte für alle Comboboxen in allen Reihen in Spalte 3.
Ich habe auch versucht, in der getCellEditorComponent Methode die jeweilige Combobox zu füllen, aber da gibt es dann Probleme, dass der Wert nicht in die Combobox übernommen wird etc.
Weiß jemand eine schöne, saubere Lösung für dieses Problem, oder ist das gar nicht mit JTable zu lösen
Bin für jede Hilfe dankbar...
ich habe folgendes Problem:
ich habe eine JTable Komponenten die im Moment aus 3 Spalten besteht:
- 1 Name
- 2 Combobox
- 3 Combobox
Die erste Combobox ernthält in jeder Reihe dieselben Werte (man kann natürlich in jeder Reihe einen anderen Wert auswählen.)
Wählt nun der Benutzer in der zweiten Spalte einen Wert aus, soll sich die Combobox in der dritten Spalte, gleiche Reihe mit Werten aus einer Datenbank füllen, d.h. je nach dem was in Spalte 2 ausgewählt wurde, sollen sich die enthaltenen Werte der Combobox in derselben Reihe ändern.
Ich habe für jede Spalte zwei verschiedene Comboboxtypen. Beide füge ich mit zwei verschiedenen Zelleditoren in die entsprechende Spalte in der Tabelle ein, wie z.B.:
Code:
col = tblSettings.getColumnModel().getColumn(1);
col.setCellEditor(new ComboCellEditor(classesCombo));
col.setCellRenderer(new ComboCellRenderer(classesCombo.getItems()));
Ich habe schon versucht, über einen TableModelListener abzufangen, wann sich der Wert in einer Combobox der zweiten Spalte ändert und dann entsprechend den Zelleditor aus der dritten Spalte zu bekommen und diesen dann anzupassen, aber dann ändern sich die Werte für alle Comboboxen in allen Reihen in Spalte 3.
Ich habe auch versucht, in der getCellEditorComponent Methode die jeweilige Combobox zu füllen, aber da gibt es dann Probleme, dass der Wert nicht in die Combobox übernommen wird etc.
Weiß jemand eine schöne, saubere Lösung für dieses Problem, oder ist das gar nicht mit JTable zu lösen
Bin für jede Hilfe dankbar...