Valinta
Table-komponentti tarjoaa erilaisia valintamahdollisuuksia. On olemassa menetelmiä yksittäisen kohteen valitsemiseen, useiden kohteiden valitsemiseen tai valintojen hallintaan ohjelmallisesti.
Lisätietoja siitä, kuinka käyttää Repository-mallia kokoelmien hallintaan ja kyselyyn, katso Repository-artikkelit.
Valintatila
Taulukon valintatila määrittää, kuinka käyttäjät voivat valita kohteita. Se tarjoaa vaihtoehtoja kohteen valinnan käytöksen määrittämiseksi. Taulukko-luokka tarjoaa menetelmän valintatilan asettamiseksi:
setSelectionMode(SelectionMode selectionMode)
Saatavilla olevat SelectionMode-vaihtoehdot ovat:
SINGLE- (yksittäinen valinta)MULTI- (monivalinta)NONE- (ei valintaa).
Valintaeventti
Table-komponenttipaketti julkaisee useita tapahtumia, jotka liittyvät rivivalintaan. Nämä tapahtumat tallentavat muutoksia Table-rivien valintatilassa. Alla ovat tärkeimmät valinta-eventit sekä niiden kuvaukset:
TableItemSelectEvent- Julkaistaan, kun taulukon kohde valitaan.TableItemDeselectEvent- Julkaistaan, kun taulukon kohde poistetaan valinnasta.TableItemSelectionChange- Julkaistaan, kun taulukon kokonaisvalinta muuttuu tai kun lisävalinta tehdään.
TableItemSelectEvent ja TableItemDeselectEvent eivät aktivoidu, kun monivalintatila on käytössä ja valinta tehdään otsikkoruudun valintaruudun kautta. Tässä tapauksessa tulee käyttää TableItemSelectionChange-tapahtumaa.
Esimerkissä alla TableItemSelectEvent-tapahtuma laukaisee aina, kun käyttäjä valitsee rivin. Tapahtumalle voidaan lisätä käsittelijä taulukkoon käyttämällä onItemSelect()-metodia.
Valintaruutuvalinta
Valintaruutuvalinta on käytössä, kun valintatila on MULTI, ja se mahdollistaa käyttäjien valita yhden tai useamman kohteen helposti valintaruudujen avulla, jotka on liitetty jokaiseen riviin. Tämä ominaisuus on erityisen hyödyllinen tilanteissa, joissa käyttäjät tarvitsevat suorittaa massatoimia valituilla kohteilla. Taulukko-luokka tarjoaa menetelmiä valintaruudun valinnan mahdollistamiseen ja mukauttamiseen.
Käyttämällä setCheckboxSelection(boolean checkboxSelection)-metodia voidaan konfiguroida valintaruudut näytettäväksi jokaisen rivin vieressä, jolloin käyttäjät voivat valita kohteita. Alla oleva ohjelma näyttää monivalinnan ja valintaruutuvalinnan olevan käytössä:
Ohjelmallinen valinta
Table-komponentti tarjoaa ohjelmallisia valintamenetelmiä, jotka mahdollistavat valittujen kohteiden muokkaamisen joko niiden avaimilla tai koko kohteilla.
Valitse avaimen mukaan
selectKey(Object... keys)-metodi mahdollistaa kohteiden ohjelmallisen valitsemisen niiden avaimien avulla. Voit välittää tälle metodille yhden tai useamman avaimen, ja se päivittää valinnan vastaavasti.
Valitsemalla entiteettikohteet
Lopuksi select(T... items)-metodi mahdollistaa kohteiden ohjelmallisen valitsemisen välittämällä yksi tai useampi kohde tälle metodille, jolloin valinta päivitetään vastaavasti.
Jatka oppimista
ArtikkeliSpring Data JPA grid: sort, filter, and page in Java
ArtikkeliJava Data Grid: Build Fast, Sortable Tables with webforJ
ArtikkeliJava CRUD web app with Spring Boot and webforJ, step by step
ArtikkeliMulti-select in Java UI: ListBox and ChoiceBox with webforJ
ArtikkeliNatural language search for a Java table with webforJ
ArtikkeliJava web front end for a database: browse and edit