# JTable -> Spaltenbreite ändern!



## l.locke (12. Mrz 2004)

Hi,

es muss doch irgendwie gehen das ich bei meiner JTable einen Horizontalen SrollBalken,  die Spaltenbreite so stzen kann das es gut passt und trotzdem noch bei belieben die Spaltenbreite mit der Maus ändern kann!

Wenn jemand eine lösung kennt, bitte sagen!

MfG Locke


----------



## Vatar (12. Mrz 2004)

Ich hab das mit einem ColumnModel gemacht. Da kannst du dann die Breite in Pixeln angeben und wenn weniger zur vefügung steht (oder du die Breite mit der Maus änderst) bleibt das VERHÄLTNIS der Spalten zueinander bestehen.

1 Spalte 100px  1/3
2 Spalte 200px  2/3

Soweit ich mich erinnere musst du im Column Model deine Columns erzeugen und jeder Spalte mit (glaube) setWidth(...pixel) eine Breite zuweisen.


----------



## Beni (12. Mrz 2004)

setPreferredWidth( ... ) ?


----------



## Yves (22. Mrz 2004)

So könnte es funktionieren...    

```
private void setTableSize(JTable table) {
        table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
        for (int i = 0; i < table.getColumnCount(); i++) {
            int vColIndex = i;
            TableColumn col = table.getColumnModel().getColumn(vColIndex);
            if (i == 0) {
                int width = 60;
                col.setPreferredWidth(width);
            }
            if (i == 1) {
                int width = 150;
                col.setPreferredWidth(width);
            }
            if (i == 2) {
                int width = 100;
                col.setPreferredWidth(width);
            }
            if (i == 3) {
                int width = 60;
                col.setPreferredWidth(width);
            }
        }
    }
```


----------

