Masīvu izmantošana tabulas datu glabāšanai
Vienkāršs veids, kā sniegt datus par
klase ir izmantot divus masīvus. Pirmais satur kolonnu nosaukumus a
masīvs:
Otrais masīvs ir divdimensiju objektu masīvs, kas satur tabulas datus. Piemēram, šajā blokā ir seši olimpiskie peldētāji:
Galvenais šeit ir pārliecināties, vai abiem masīviem ir vienāds kolonnu skaits.
JTable izveidošana
Kad dati ir pieejami, tabulas izveidošana ir vienkāršs uzdevums. Tikai piezvaniet
JTablekonstruktors un nododiet tai divus masīvus: Jūs, iespējams, vēlēsities pievienot ritjoslas, lai nodrošinātu, ka lietotājs var redzēt visus datus. Lai to izdarītu, novietojiet.
JTableuz a
JScrollPane: Tagad, kad tiek parādīta tabula, jūs redzēsit datu slejas un rindas un varēsit ritināt uz augšu un uz leju.
JTable objekts nodrošina interaktīvu tabulu. Ja veicat dubultklikšķi uz jebkuras šūnas, jūs varēsit rediģēt saturu - lai gan jebkura rediģēšana ietekmē tikai GUI, nevis pamatā esošos datus. (An pasākuma klausītājs būtu jāievieš, lai apstrādātu datu mainīšanu.).
Lai mainītu kolonnu platumu, virziet peli uz kolonnas galvenes malas un velciet to uz priekšu un atpakaļ. Lai mainītu kolonnu secību, noklikšķiniet un turiet kolonnas galveni, pēc tam velciet to uz jauno pozīciju.
Kolonnu šķirošana
Lai pievienotu iespēju kārtot rindas, piezvaniet
setAutoCreateRowSortermetode: kad šī metode ir iestatīta uz patiesu, varat noklikšķināt uz kolonnas galvenes, lai sakārtotu rindas atbilstoši šīs kolonnas šūnu saturam.
Tabulas izskata maiņa
Lai kontrolētu režģa līniju redzamību, izmantojiet
setShowGridmetode: Lai pilnībā mainītu tabulas krāsu, izmantojiet.
setBackgroundun
setGridColormetodes: tabulas kolonnu platums pēc noklusējuma ir vienāds. Ja konteinera, kurā atrodas galds, izmērs ir no jauna, kolonnu platums paplašināsies un saruks, un konteiners palielināsies vai būs mazāks. Ja lietotājs maina kolonnas izmēru, kolonnu platums pa labi mainīsies, lai pielāgotos jaunajam kolonnas izmēram.
Sākotnējo kolonnu platumu var iestatīt, izmantojot metodi setPreferredWidth vai kolonnu. Izmantojiet TableColumn klasi, lai vispirms iegūtu atsauci uz kolonnu, un pēc tam metodi setPreferredWidth, lai iestatītu lielumu:
Atlasot rindas
Pēc noklusējuma lietotājs var atlasīt tabulas rindas vienā no trim veidiem:
- Lai atlasītu vienu rindu, atlasiet tabulas šūnu tajā rindā.
- Lai atlasītu nepārtrauktas, vairākas rindas, velciet peli virs vairākām rindām vai atlasiet tabulas šūnas, nospiežot maiņas šūnu.
- Lai atlasītu nepārtrauktas, vairākas rindas, atlasiet tabulas šūnas, turot nospiestu vadības taustiņš (komandu taustiņu Mac datoriem).
Izmantojot tabulas modeli
Ja vēlaties vienkāršu, tabulas datiem var izmantot pāris masīvu Stīgubāzes tabula, kuru var rediģēt. Ja aplūkojat mūsu izveidoto datu masīvu, tajā ir citi datu veidi nekā
-
kolonna satur
un
kolonna satur
. Tomēr abas šīs kolonnas tiek parādītas kā virknes. Lai mainītu šo uzvedību, izveidojiet tabulas modeli.
Tabulas modelis pārvalda tabulā parādītos datus. Lai ieviestu tabulas modeli, varat izveidot klasi, kas paplašina
klase:
Iepriekš norādītās sešas metodes ir tās, kuras izmantotas šajā soli pa solim, taču ir arī vairākas metodes, kuras definē
klase, kas ir noderīga, manipulējot ar datiem
objekts. Pagarinot klasi, lai izmantotu
jums ir jāievieš tikai
,
un
metodes.
Izveidojiet jaunu klasi, izmantojot šīs piecas iepriekš parādītās metodes:
Šajā piemērā ir jēga
klase, lai noturētu abas virknes, kas satur tabulas datus. Pēc tam
,
un
metodes var izmantot masīvus, lai nodrošinātu tabulas vērtības. Tāpat ievērojiet, kā
Ir uzrakstīta metode, kas neļauj rediģēt pirmās divas kolonnas.
Tagad tā vietā, lai izveidotu divus blokus, izmantojiet
objektu, mēs varam izmantot
klase:
Kad kods darbosies, jūs redzēsit, ka
objekts izmanto tabulas modeli, jo neviena no tabulas šūnām nav rediģējama, un kolonnu nosaukumi tiek izmantoti pareizi. Ja
metode nebija ieviesta, tad tabulas kolonnu nosaukumi parādīsies kā noklusējuma nosaukumi A, B, C, D utt.
Tagad apsvērsim metodi
. Tas vien padara tabulas modeli ieviešanas vērtīgu, jo tas nodrošina
objekts ar katrā slejā esošo datu tipu. Ja atceraties, objekta datu masīvā ir divas kolonnas, kuras nav
datu tipi:
kolonna, kurā ir iespiedumi, un
kolonna, kurā ir
. Zinot šos datu tipus, tiek mainīta
objekts šīm kolonnām. Parauga tabulas koda palaišana ar ieviesto tabulas modeli nozīmē:
kolonna faktiski būs izvēles rūtiņu virkne.
ComboBox redaktora pievienošana
Tabulas šūnām varat definēt pielāgotos redaktorus. Piemēram, kombinēto lodziņu jūs varētu padarīt par alternatīvu lauka standarta teksta rediģēšanai.
Šeit ir piemērs, izmantojot
lauku lauks:
Lai iestatītu slejas noklusējuma redaktoru, izmantojiet
klase, lai iegūtu atsauci uz valsts kolonnu, un
metode, lai iestatītu
kā šūnas redaktors: