[Java] JTable, gebruik van model-->geen columnheaders

Pagina: 1
Acties:

  • Goldme
  • Registratie: September 2000
  • Laatst online: 21-08 13:42
Door omstandigheden ben ik genoodzaakt een tablemodel voor mijn JTable te gebruiken. Wat ik hiervor deed was het volgende:

maak een tabel aan, in de constructor gelijk aangeven hoeveel rijen en kolommen
voor elke kolom een headervalue instellen

Dat werkte goed en de tabel toonde die kolomheaders/kolomnamen.

Toen ik echter overschakelde op een model(om de cellen uneditable te maken, pure tijdverspilling voor zo'n simpele functie) leek het mij onnodig om alle kolommen met de hand in te stellen, in mijn model is er namelijk al een methode "getcolumnname".

Dit werkte echter niet, er werden geen kolomnamen getoond. de waarden werden goed getoond(dus kolomnummers en rijnummer kloppen wel in het model)maar de kolomnamen waren weg.

Dus ik dacht dat ik die toch manueel moet instellen, echter die kolomnamen komen ook hier niet tevoorschijn.

Als ik een kolomnaam opvraag van de tabel dan krijg ik netjes de goede naam, het wordt echter niet getoond nu ik gebruik maak van een eigen model(in plaats van de defaultmodel dus).

[ Voor 7% gewijzigd door Goldme op 05-05-2003 14:19 ]


  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
extend je van AbstractTableModel?

  • Goldme
  • Registratie: September 2000
  • Laatst online: 21-08 13:42
ja

Verwijderd

Misschien is het handig als je eens wat code post. Sowieso van je TableModel.

  • Goldme
  • Registratie: September 2000
  • Laatst online: 21-08 13:42
Nou, het is inmiddels opgelost, de table zat namelijk niet in een scrollpane en dan toont ie geen headers(weer zo'n vaag gebruik van scrollpane), nu zit ie in een scrollpane en dan toont ie netjes de headers. Headers die echt iets zijn voor een jtable moet je dus tevoorschijn halen met een andere class die niet bepaald voor de hand ligt(geen scrollpane betekent dus ook geen headers met jtable).

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Goldme schreef op 05 May 2003 @ 14:15:
Door omstandigheden ben ik genoodzaakt een tablemodel voor mijn JTable te gebruiken. Wat ik hiervor deed was het volgende:

maak een tabel aan, in de constructor gelijk aangeven hoeveel rijen en kolommen
voor elke kolom een headervalue instellen

Dat werkte goed en de tabel toonde die kolomheaders/kolomnamen.

Toen ik echter overschakelde op een model(om de cellen uneditable te maken, pure tijdverspilling voor zo'n simpele functie) leek het mij onnodig om alle kolommen met de hand in te stellen, in mijn model is er namelijk al een methode "getcolumnname".
Ik geloof dat er ook een optie bij de table is: setEditable. En verder wordt er altijd een model aangemaakt. Bijna alle zichzelfrespecterende swingcomponenten werken met een model. Zelf bij het aanmaken op jouw manier van een table wordt gebruik gemaakt van een model. Deze wordt alleen onzichtbaar op de achtergrond voor je gevuld.
Dit werkte echter niet, er werden geen kolomnamen getoond. de waarden werden goed getoond(dus kolomnummers en rijnummer kloppen wel in het model)maar de kolomnamen waren weg.
Dit komt omdat je eerst de table in de scrollpane hebt geplaatst, en daarna pas de model hebt ingesteld.

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
Goldme: sorry voor het niet beantwoorden van je vraag - had net gezelezen dat in Swing je idd een ScrollPane MOET gebruiken om zeker te zijn. In AWT had je daar een speciale ScrollPane voor nodig. Helaas werd ik onderbroken en nu pas herinner ik me het...

Many Apologies...

  • pgussow
  • Registratie: Maart 2003
  • Laatst online: 18-08-2025
Tsja, de eerste keer dat je dat overkomt is klote.. Maar je vergeet het daarna nooooooit meer :P
Pagina: 1