Axel Richter: JTable Problem

Beitrag lesen

Hallo Lina,

Gerade habe ich gelesen, dass es eine Methode stopCellEditing gibt. dies ist allerdings keine Methode von JTable sondern von DefaultEditor (oder so ähnlich).

*g* von javax.swing.CellEditor

Da verlassen mich dann meine Java-Kenntnisse ;) Kann mir vielleicht jemand sagen, wie ich die Tabelle dazu überredet kriege diese Methode zu benutzen? wenn ich einfach sage tabelle.stopCellEditing() krieg ich natuerlich cannot resolve symbol... *g* naja - probiern kann mans ja mal :)

OOP:
JTable tabelle hat eine Methode getCellEditor(). Diese liefert einen TableCellEditor. Dieser erbt von CellEditor die Methode stopCellEditing(). Das ganze darf natürlich nur aufgerufen werden, wenn auch gerade eine Zelle editiert wird. Um das zu prüfen hat die JTable tabelle eine Methode isEditing(). Also:

if(tabelle.isEditing()) tabelle.getCellEditor().stopCellEditing();

Das funktioniert aber nur, wenn alle Zellen den selben Editor verwenden.

viele Grüße

Axel