Verschiedene Documents in Tabelle

Snape

Erfahrenes Mitglied
Tach,
jetzt bin ich mal dran mit fragen. :)

Ich habe eine Tabelle mit einer Beschränkung des Eingabetyps in den editierbaren Zellen, in diesem Fall ausschliesslich Zahlen zulässig.
Nun möchte ich für eine bestimmte Zeile auch Kommazahlen in diesen editierbaren Zellen zulassen. Geht das, wenn ja, wie?
Das Document für die Eingabe läuft bisher ganz normal über

jTable.setDefaultEditor(Integer.class, cellEditor);

und hinterliegt dem CellEditor.
D.h. für alle TableColumns die als Integer.class angelegt sind, wird dieser CellEditor mit diesem Document benutzt. Das Problem müsste nun klar sein. Die Spalte bleibt die gleiche, aber wenn eine bestimmte Zeile (eines bestimmten Typs) vorhanden ist, soll eben nicht das normale Document resp. der normale CellEditor verwendet werden, sondern einer, der Gleitkommazahlen zulässt. Und zwar nur für diese Zeile.

Jemand eine Idee?
 
Original geschrieben von Snape
Tach,
jetzt bin ich mal dran mit fragen. :)

Ich habe eine Tabelle mit einer Beschränkung des Eingabetyps in den editierbaren Zellen, in diesem Fall ausschliesslich Zahlen zulässig.
Nun möchte ich für eine bestimmte Zeile auch Kommazahlen in diesen editierbaren Zellen zulassen. Geht das, wenn ja, wie?
Das Document für die Eingabe läuft bisher ganz normal über

jTable.setDefaultEditor(Integer.class, cellEditor);

und hinterliegt dem CellEditor.
D.h. für alle TableColumns die als Integer.class angelegt sind, wird dieser CellEditor mit diesem Document benutzt. Das Problem müsste nun klar sein. Die Spalte bleibt die gleiche, aber wenn eine bestimmte Zeile (eines bestimmten Typs) vorhanden ist, soll eben nicht das normale Document resp. der normale CellEditor verwendet werden, sondern einer, der Gleitkommazahlen zulässt. Und zwar nur für diese Zeile.

Jemand eine Idee?

Ich habe jetzt zumindest eine Idee:
Über TableCellEditor gibt es getTableCellEditorComponent(..). Also lege ich zwei CellEditoren an, den einen benutze ich nur für die Spezialzeilen, und hinterlege diesem das andere Document.
Demnächst mal schauen, ob das in der Praxis auch so funktioniert...
 

Neue Beiträge

Zurück