JTable Problem mit Selektion

00d4vid

Mitglied
Ich programmiere gerade eine GUI mit einer JTable drauf.
In der JTable kann man durch Doppelklick eine Zelle auswählen und einen Wert ändern. Wenn ich dann auf meinen Speichern-Button drücke, der sich die Daten aus der Table holt funktioniert das auch alles, sofern man vorher Enter drückt, oder in eine andere Zelle.
Wenn man jetzt allerdings ohne irgendwas zu tun auf Speichern drückt, dann ist die Zelle ja nach wie vor (mit einem Doppelklick) selektiert und das bleibt dann auch so was zur Folge hat, dass der neu eingegebene Wert nicht ausgelesen werden kann.
Bisher habe ich probiert:

myJTable.grabFocus();

und dann mit einem Robot ein Drücken der Enter Taste abzusetzen, was aber nicht funktioniert.

Hat jemand eine Idee, wie ich die Zelle deselektieren kann, wenn der User auf den Speichern-Button klickt?
 
Du kannst doch den Focus an eine andere
Stelle setzen oder du könntest auch einen
KeyListener an die Zellen anbinden, die
Eingabe speichern und dann diese Variable
speichern, statt den Inhalt.
 
Hi,
JTable kennt eine editingStopped-Routine, ist bestandteil des CellEditorListener-Interface.
viellleicht hilft es Dir ja weiter, wenn Du diese Routine aufrufst, sobald JTable das Editieren einstellen soll (Focus verloren oder ähnliches)

viel Glück

Takidoso
 
Zuletzt bearbeitet:
Zurück