Starten Sie die Bearbeitung in einer Zelle in JTable auf gewinnen konzentrieren

Habe ich definiert cell-Editoren für die zwei Spalten in meiner Tabelle in der folgenden Art und Weise:

Java-Code:

JComboBox combo = new JComboBox();
//code to add items to the combo box goes here.

JTextField textField = new JTextField();
textField.setHorizontalAlignment(JTextField.RIGHT);

TableColumn column = myJTable.getColumnModel().getColumn(0);
column.setCellEditor(new DefaultCellEditor(combo));

column = myJTable.getColumnModel().getColumn(1);
column.setCellEditor(new DefaultCellEditor(textField));

Das problem, das ich konfrontiert ist, dass, wenn ein Mittelpunkt verschoben wird, um eine Tabelle Zelle, die Zelle wird nicht automatisch bearbeitet werden. Also, wenn sich der Fokus verschoben in die Spalte 2 (mit einen text-Feld als editor), das caret-Zeichen nicht angezeigt, es sei denn, die Zelle doppelt geklickt wird oder der Benutzer mit der Eingabe beginnt. Ähnlich ist der Fall für die Spalte 1 (das hat eine combo-box als Redakteur), da hier die combo-box nicht angezeigt, wenn auf die Zelle geklickt wird. Diese Verhaltensweisen sind unlogisch und nicht wünschenswert für einen Benutzer die Bedienung mit der Tastatur.:(

Bitte Hinweise, wie diese gelöst werden könnten.

Vielen Dank im Voraus.

InformationsquelleAutor zerone | 2012-08-07
Schreibe einen Kommentar