Trieda DefaultTableModel v Java ukladá údaje pre JTable

DefaultTableModel

trieda je podtrieda

AbstractTableModel

. Ako už názov napovedá, je to tabuľkový model, ktorý používa a

keď programátor konkrétne nedefinuje žiadny model tabuľky. DefaultTableModel ukladá údaje pre JTable v a

vektor

z

Vectors

.

Napriek tomu

vektor

je staršia kolekcia Java, ktorá je stále podporovaná a s jej používaním nie je žiadny problém, pokiaľ dodatočné režijné náklady spôsobené synchronizovanou kolekciou nie sú problémom pre vašu Java aplikáciu.

Výhoda použitia

DefaultTableModel

nad zvyk

AbstractTableModel

nemusíte kódovať metódy, ako je pridávanie, vkladanie alebo odstraňovanie riadkov a stĺpcov. Už existujú na zmenu údajov uchovávaných na internete

vektor

z

Vektory.

Vďaka tomu je implementovaný rýchly a ľahký model stola.

Importné vyhlásenie

import javax.swing.table. DefaultTableModel;

konštruktéri

DefaultTableModel

trieda má šesť

. Každý môže byť použitý na osídlenie

DefaultTableModel

rôznymi spôsobmi.

Prvý konštruktor neberie argumenty a vytvára

DefaultTableModel

bez údajov, nulových stĺpcov a nulových riadkov:

instagram viewer
DefaultTableModel defTableModel = DefaultTableModel ();

Nasledujúci konštruktor sa môže použiť na určenie počtu riadkov a stĺpcov a

DefaultTableModel

bez údajov:

DefaultTableModel defTableModel = DefaultTableModel (10, 10);

Existujú dva konštruktory, ktoré môžu byť použité na vytvorenie

DefaultTableModel

s názvami stĺpcov a určeným počtom riadkov (všetky obsahujúce nulové hodnoty). Jeden používa

objekt

pole na uchovávanie názvov stĺpcov, ostatné a

vektor

:

alebo

DefaultTableModel defTableModel = DefaultTableModel (columnNames, 10);

Nakoniec sú tu dvaja konštruktéri, ktorí sa používajú na osídlenie

DefaultTableModel

s údajmi riadkov spolu s názvami stĺpcov. Jeden použitý

objekt

polia, ostatné

Vectors

:

alebo

Užitočné metódy

Ak chcete pridať riadok do

DefaultTableModel

Použi

addRow

metóda spolu s údajmi v riadku, ktoré sa majú pridať:

Na vloženie riadku použite

insertRow

metóda určujúca index riadkov, ktorý sa má vložiť, a údaje riadkov:

Ak chcete odstrániť riadok, použite

removeRow

metóda určujúca index riadkov, ktorý sa má odstrániť:

defTableModel.removeRow (0);

Na získanie hodnoty v bunke tabuľky použite

getValueAt

metóda. Napríklad, ak údaje v riadku 2, stĺpci 2 obsahujú int:

int value = tabModel.getValueAt (2, 2);

Na nastavenie hodnoty v bunke tabuľky

setValueAt

metóda s hodnotou, ktorá sa má nastaviť spolu s indexom riadkov a stĺpcov:

defTableModel.setValueAt (8888, 3, 2);

Tipy na používanie

Ak

JTable

je vytvorený pomocou konštruktora, ktorému je odovzdané dvojrozmerné pole obsahujúce údaje riadka a pole obsahujúce názvy stĺpcov:

potom nasledujúce obsadenie nebude fungovať:

Runtime

ClassCastException

bude hodený, pretože v tomto prípade bude

DefaultTableModel

je deklarovaný ako

v

JTable

objekt a nemožno ho obsadiť. Môže byť odovzdaný iba do

TableModel

rozhranie. Spôsob, ako to obísť, je vytvoriť si vlastný

DefaultTableModel

a nastaviť ho ako vzor

JTable

:

Potom

DefaultTableModel
defTableModel

môže byť použitý na manipuláciu s údajmi v systéme Windows

JTable

.

Ak chcete vidieť

DefaultTableModel

v akcii sa pozrite na

.