JTable - Zelle editieren



  • Hallo,

    ich ärgere mich gerade mit einer JTable. Ich habe aktuell:

    JTable table=new JTable();
    table.setAutoCreateColumnsFromModel(true);
    table.setModel(stm);
    
    JTextField editorTextbox=new JTextField(); 
    TableCellEditor editor = new DefaultCellEditor(editorTextbox);		
    table.setCellEditor(editor);
    

    ...wobei stm eine Instanz einer Eigenbau-Klasse ist, die auf AbstractTableModel basiert.

    Ich versuche nun via table.editCellAt(0,0) die Zelle (0,0) editierbar zu machen und die Änderungen die im Textfeld gemacht werden sollen zurück ins Model gespeichert werden.
    Aktueller Stand: Die Textbox taucht auf und ich kann etwas eingeben.
    Das Problem: Nach "Enter" wird wieder der alte Stand angezeigt und die eigentlich eingetippte Änderung ist weg.
    Ich hätte eigentlich vermutet, das nach "Enter" der Inhalt der Textbox via setValueAt() ins Model übertragen wird - Die Funktion wird allerdings nicht aufgerufen.
    Muss man dazu noch selbst irgendwelchen Code bauen und das "von Hand" erledigen?



  • Hat sich erledigt, ich hatte die setValueAt()-Methode schlicht nochmal doppelt mit falscher Argumentenreihenfolge im Code und hatte den Code quasi in der falschen Methode sitzen 🙄


Log in to reply