|
| Formatering af TableColumn i JTable Fra : René Iversen |
Dato : 07-12-02 14:01 |
|
Går næsten ud fra, at jeg skal have fat i en DefaultTableColumnModel, men
ved ikke hvordan det lige fungerer. Jeg vil gerne sætte en fast størrelse på
nogle kolonner. Størrelsen skal ikke være ens på alle kolonner. Vil det sige
en model til hver kolonne?
Jeg har desuden indsat følgende linie i min tabel-klasse
setAutoResizeMode( JTable.AUTO_RESIZE_LAST_COLUMN );
som ændrer størrelse på den sidste (tomme) kolonne, hvis en kolonne
resizes...Men når nu min JTable er tilføjet i en JScrollPane, kan jeg så få
den til at justere således at tabellen går uden for JScrollPane horisontalt?
altså så der kommer scrollbar på forneden?
| |
Filip Larsen (08-12-2002)
| Kommentar Fra : Filip Larsen |
Dato : 08-12-02 14:56 |
|
René Iversen skrev
> Går næsten ud fra, at jeg skal have fat i en DefaultTableColumnModel, men
> ved ikke hvordan det lige fungerer. Jeg vil gerne sætte en fast størrelse
på
> nogle kolonner. Størrelsen skal ikke være ens på alle kolonner. Vil det
sige
> en model til hver kolonne?
Der bliver automatisk lavet en TableColumn for hver kolonne i din tabel. Du
behøver blot sætte størrelsen, fx. som
JTable table = ...
int[] pw = { 100, 200, ... };
TableColumnModel tcm = table.getColumnModel();
for (int i = 0; i < tcm.getColumnCount(); i++) {
tcm.getColumn(i).setPrefferedWidth(pw[i]);
}
Hvis du ønsker det, kan du også sætte max og min bredde tilsvarende.
> Jeg har desuden indsat følgende linie i min tabel-klasse
> setAutoResizeMode( JTable.AUTO_RESIZE_LAST_COLUMN );
> som ændrer størrelse på den sidste (tomme) kolonne, hvis en kolonne
> resizes...Men når nu min JTable er tilføjet i en JScrollPane, kan jeg så
få
> den til at justere således at tabellen går uden for JScrollPane
horisontalt?
> altså så der kommer scrollbar på forneden?
Mig bekendt er det kun med JTable.AUTO_RESIZE_OFF at man kan gøre det. Jeg
har dog kun prøvet uden at sætte bredden programatisk, så jeg kan ikke
udelukke at det godt kan lade sig gøre på en eller anden måde.
Mvh,
--
Filip Larsen <filip.larsen@mail.dk>
| |
|
|