Anzeige:
Ergebnis 1 bis 2 von 2

Thema: JTable einzelne Spalte nicht editierbar

  1. #1
    Registrierter Benutzer
    Registriert seit
    25.07.2010
    Beiträge
    5

    JTable einzelne Spalte nicht editierbar

    Hallo zusammen

    Ich bin immer noch mit meiner JTabel beschäftigt. Meine Tablle hat 9 Spalten mit unteschiedlichen Breiten aber alle mit Strings drin. Nun soll aber die letzte Spalte nicht editierbar sein. Ich arbeite mit einem SpaltenModell, bei diesem finde ich aber nichts dergleiche. Wie mach ich das? Ist dies eine Funktion der JTable selbst oder muss ich hier sogar mit dem CellEditor arbeiten?

    Hier mal ein Code Beispiel:
    Code:
     //create columnmodel for column prtnumber
            TableColumn tcPrtNumber = new TableColumn(row,(pLayout.getWidth_Pixel()[row]));
            tcPrtNumber.setHeaderValue(TABLEHEADER[row]);
            tcPrtNumber.setPreferredWidth((pLayout.getWidth_Pixel()[row])+ pLayout.getmColumn_0_GBC().insets.left + pLayout.getmColumn_0_GBC().insets.right);
            tcPrtNumber.setMinWidth((pLayout.getWidth_Pixel()[row])+ pLayout.getmColumn_0_GBC().insets.left + pLayout.getmColumn_0_GBC().insets.right);
            tcPrtNumber.setResizable(false);
            row++;
    Schon mal herzlichen Dank im Voraus.

    Grüsse

    Nahum

  2. #2
    Registrierter Benutzer Avatar von John W
    Registriert seit
    29.01.2010
    Beiträge
    211
    Du benötigst ein TableModel, du kannst z.B. das hier verwenden:
    Code:
    public class MainTableModel
    extends DefaultTableModel
    {
        public int getColumnCount()
         {
             return 9;
         }
    
         public boolean isCellEditable(int r, int c)
        {
            return c != 8;
        }
    }
    Das übergibst du dem Konstruktor der JTable.
    Folgende Imports sind dann noch nötig:
    Code:
    import javax.swing.table.DefaultTableModel;
    import javax.swing.table.TableColumnModel;

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •