TabbedPane
Useita sisältöjaksoja voidaan järjestää yhden TabbedPane alle, missä kukin jakso on liitetty napsautettavaksi Tab. Vain yksi jakso on näkyvissä kerrallaan, ja välilehdet voivat näyttää tekstiä, kuvakkeita tai molempia auttaakseen käyttäjiä navigoimaan niiden välillä.
Käytännöt
TabbedPane-luokka tarjoaa kehittäjille tehokkaan työkalun useiden välilehtien tai osioiden järjestämiseen ja esittämiseen käyttöliittymässä. Tässä on joitakin tyypillisiä tilanteita, joissa voit hyödyntää TabbedPane-komponenttia sovelluksessasi:
-
Asiakirjan katselu: Asiakirjan katseluohjelman toteuttaminen, jossa jokaista välilehteä vastaa eri asiakirja tai tiedosto. Käyttäjät voivat helposti vaihtaa avoimien asiakirjojen välillä tehokkaassa moniajossa.
-
Tietojen hallinta:: Käytä
TabbedPane-komponenttia järjestääksesi tietojen hallintatehtäviä, esimerkiksi:- Eri tietojoukkoja, jotka on tarkoitettu näytettäväksi sovelluksessa
- Erilaiset käyttäjäprofiilit voidaan näyttää erillisissä välilehdissä
- Eri profiilit käyttäjänhallintajärjestelmässä
-
Moduulin valinta:
TabbedPanevoi edustaa erilaisia moduuleja tai osioita. Kukin välilehti voi kapseloida tietyn moduulin toiminnot, mikä mahdollistaa käyttäjien keskittymisen yhteen sovelluksen osa-alueeseen kerrallaan. -
Tehtävien hallinta: Tehtävienhallintasovellukset voivat käyttää
TabbedPane-komponenttia jäsentämään erilaisia projekteja tai tehtäviä. Kukin välilehti voisi viitata tiettyyn projektiin, jolloin käyttäjät voivat hallita ja seurata tehtäviä erikseen. -
Ohjelman navigointi: Sovelluksessa, joka tarvitsee suorittaa erilaisia ohjelmia,
TabbedPanevoisi:- Toimia sivupalkkina, joka mahdollistaa erilaisten sovellusten tai ohjelmien suorittamisen yhdessä sovelluksessa, kuten mitä esitetään
AppLayout-mallissa - Luoda yläpalkin, joka voi palvella samanlaista tarkoitusta tai edustaa alaohjelmia jo valitussa sovelluksessa.
- Toimia sivupalkkina, joka mahdollistaa erilaisten sovellusten tai ohjelmien suorittamisen yhdessä sovelluksessa, kuten mitä esitetään
Välilehdet
Välilehdet ovat käyttöliittymän elementtejä, joita voidaan lisätä välilehtipaneeleihin erilaisten sisältönäkymien järjestämiseksi ja niiden välillä vaihtamiseksi.
Välilehtiä ei ole tarkoitettu käytettäväksi itsenäisinä komponentteina. Niitä on tarkoitus käyttää yhdessä välilehtipaneelien kanssa. Tämä luokka ei ole Component, eikä sitä tule käyttää sellaisena.
Ominaisuudet
Välilehdet koostuvat seuraavista ominaisuuksista, joita käytetään lisättäessä niitä TabbedPane -komponenttiin. Näillä ominaisuuksilla on getterit ja setterit, jotka helpottavat mukauttamista TabbedPane-komponentissa.
-
Key(
Object): EdustaaTab:n ainutkertaista tunnistetta. -
Text(
String): Teksti, joka näytetäänTab:n otsikkonaTabbedPane:ssa. Tämä tunnetaan myös otsikkonagetTitle()jasetTitle(String title)-menetelmien kautta. -
Tooltip(
String): Vinkkiteksti, joka liittyyTab:iin ja joka näytetään, kun kohdistin leijuuTab:n päällä. -
Enabled(
boolean): Edustaa, onkoTabtällä hetkellä käytössä vai ei. Voidaan muuttaasetEnabled(boolean enabled)-menetelmällä. -
Closeable(
boolean): Edustaa, voikoTabolla suljettavissa. Voidaan muuttaasetCloseable(boolean enabled)-menetelmällä. Tämä lisää sulkemispainikkeenTab:iin, jota käyttäjä voi napsauttaa, ja laukaisee poistotapahtuman.TabbedPane-komponentti määrää, miten poistamisprosessi käsitellään. -
Slot(
Component): Slotit tarjoavat joustavia vaihtoehtojaTab:n kyvykkyyden parantamiseksi. Voit laittaa kuvakkeita, etikettejä, latauspyöröitä, tyhjennys/nollausmahdollisuuksia, avatar/profiilikuvaajia ja muita hyödyllisiä komponentteja upotettunaTab:iin, jotta käyttäjille selkeytetään aiottua merkitystä. Voit lisätä komponentinprefix-slotinTab:iin rakennettaessa. Vaihtoehtoisesti voit käyttääsetPrefixComponent()jasetSuffixComponent()-menetelmiä, jotta voit sijoittaa erilaisia komponentteja ennen ja jälkeen näytettäv än vaihtoehdonTab:issa.TabbedPane pane = new TabbedPane();
pane.addTab(new Tab("Documents", TablerIcon.create("files")));
Tab:n käsittely
Erilaisia menetelmiä on olemassa, jotta kehittäjät voivat lisätä, sisällyttää, poistaa ja käsitellä Tab-elementtien erilaisia ominaisuuksia TabbedPane-komponentissa.
Tab:n lisääminen
addTab() ja add() -menetelmät ovat saatavilla erilaisissa ylikuormitetuissa muodoissa, jotta kehittäjät voivat joustavasti lisätä uusia välilehtiä TabbedPane-komponenttiin. Välilehden lisääminen asettaa sen aikaisempien olemassa olevien välilehtien jälkeen.
addTab(String text)- LisääTab:nTabbedPane:een, jossa määriteltyStringtoimiiTab:n tekstinä.addTab(Tab tab)- Lisää parametrina annettuTabTabbedPane:een.addTab(String text, Component component)- LisääTab, jonka annettuStringtoimiiTab:n tekstinä, ja annettuComponentnäytetäänTabbedPane:n sisältöosiossa.addTab(Tab tab, Component component)- Lisää annettuTabja näyttää annettavanComponentTabbedPane:n sisältöosiossa.add(Component... component)- Lisää yksi tai useampiComponent-instanssiTabbedPane:een, luoden jokaiselle erillisenTab:n, jonka teksti asetetaanComponent:n nimeksi.
add(Component... component) määrittää lähetetyn Component:n nimen kutsumalla component.getName() lähetetystä argumentista.
Tab:n lisääminen tiettyyn paikkaan
Lisäksi uuden Tab:n luominen määrättyyn paikkaan on mahdollista. Tähän on useita ylikuormitettuja versioita insertTab()-menetelmästä.
insertTab(int index, String text)- LisääTab:nTabbedPane:en määritettyyn indeksiin, jossa määriteltyStringtoimiiTab:n tekstinä.insertTab(int index, Tab tab)- Lisää parametrina annettuTabTabbedPane:een määritettyyn indeksiin.insertTab(int index, String text, Component component)- LisääTab, jonka annettuStringtoimiiTab:n tekstinä, ja annettuComponentnäytetäänTabbedPane:n sisältöosiossa.insertTab(int index, Tab tab, Component component)- Lisää annettuTabja näyttää annettavanComponentTabbedPane:n sisältöosiossa.
Tab:n poistaminen
Yhden Tab:n poistamiseksi TabbedPane:sta käytä jotakin seuraavista menetelmistä:
removeTab(Tab tab)- PoistaaTab:nTabbedPane:sta siirtämällä poistettavan Tab-instanssin.removeTab(int index)- PoistaaTab:nTabbedPane:sta määrittämällä poistettavanTab:n indeksi.
Yksittäisen Tab:n poistamiseksi yllä olevien kahden menetelmän lisäksi käytä removeAllTabs() -menetelmää poistaaksesi kaikki välilehdet TabbedPane:sta.
remove() ja removeAll() -menetelmät eivät poista välilehtiä komponentin sisällä.
Tab/komponenttiyhteys
Vaihtaaksesi näytettävän Component-instanssin tietylle Tab:lle, kutsu setComponentFor()-menetelmää ja siirrä joko Tab-instanssi tai kyseisen Tab:n indeksi TabbedPane:ssä.
Jos tätä menetelmää käytetään Tab:lle, joka on jo liitetty Component:iin, aikaisemmin liitetty Component tuhotaan.
Konfigurointi ja asettelu
TabbedPane-luokassa on kaksi osaa: Tab, joka näytetään määritetyssä paikassa, ja näytettävä komponentti. Tämä voi olla yksi komponentti tai Composite -komponentti, mikä mahdollistaa monimutkaisempien komponenttien esittämisen välilehden sisältöosiossa.
Pyyhkäisy
TabbedPane tukee navigointia eri välilehtien välillä pyyhkäisemällä. Tämä on ihanteellinen mobiilisovelluksille, mutta se voidaan myös määrittää sisäänrakennetun menetelmän avulla tukemaan hiiren pyyhkäisyä. Sekä pyyhkäisy että hiiren pyyhkäisy ovat oletusarvoisesti poistettu käytöstä, mutta ne voidaan ottaa käyttöön setSwipable(boolean) ja setSwipableWithMouse(boolean) -menetelmillä.
Välilehtien sijoittaminen
Tabs-elementtien sisällä TabbedPane-komponentissa voidaan sijoittaa eri paikkoihin sovelluskehittäjän mieltymysten mukaan. Tarjotut vaihtoehdot asetetaan käytettävän enum:in avulla, jossa on arvot TOP, BOTTOM, LEFT, RIGHT tai HIDDEN. Oletusasetuksena on TOP.
Näytä koodi
- TabbedPanePlacementView.java
Kohdistus
Lisäksi kuin muuttamalla Tab-elementtien sijoittamista TabbedPane-komponentissa, on myös mahdollista määrittää, miten välilehdet kohdistuvat komponenttiin. Oletusarvoisesti AUTO-asetus on voimassa, mikä sallii välilehtien sijoituksen päättää niiden kohdentamisen.
Muut vaihtoehdot ovat START, END, CENTER ja STRETCH. Ensimmäiset kolme kuvaavat sijaintia suhteessa komponenttiin, kun taas STRETCH saa välilehdet täyttämään saatavilla olevan tilan.
Näytä koodi
- TabbedPaneAlignmentView.java
Reuna ja aktiivisuuden indikaattori
TabbedPane-komponentilla on oletusarvoisesti reuna, joka näkyy välilehdissä, asetettuna sen mukaan, mikä Placement on asetettu. Tämä reuna auttaa visualisoimaan tilan, jonka erilaiset välilehdet paneelissa vievät.
Kun Tab-elementtiä klikataan, aktivoituu oletusarvoisesti aktiivisuuden indikaattori, joka korostaa, mikä on tällä hetkellä valittu Tab.
Molempia näitä vaihtoehtoja voidaan mukauttaa kehittäjällä muuttamalla boolean-arvoja asianmukaisilla setterimenetelmillä. Muuttaaksesi, näytetäänkö reuna vai ei, voit käyttää setBorderless(boolean) -menetelmää, missä true piilottaa reunan ja false, oletusarvo, näyttää reunan.
Tämä reuna ei koske koko TabbedPane-komponenttia, ja se palvelee vain erottimena välilehtien ja komponentin sisällön välillä.
Aktiivisen indikaattorin näkyvyyden asettamiseksi voit käyttää setHideActiveIndicator(boolean) -menetelmää. Siirtämällä true tähän menetelmään piilotetaan aktiivinen indikaattori aktiivisen Tab:n alla, kun taas false, oletusarvo, pitävät indikaattorin näkyvissä.
Näytä koodi
- TabbedPaneBorderView.java
Aktivointitilat
Hienosäätääksesi TabbedPane-komponentin käyttäytymistä näppäimistön navigoinnin aikana, voidaan asetukset Activation-tilalle määrittää, miten komponentin tulisi käyttäytyä.
-
Auto: Kun asetetaan automaattisesti, nuolinäppäimillä navigointi näyttäen heti vastaavan välilehden komponentin. -
Manual: Kun asetettu manuaalisesti, välilehti saa fokuksen, mutta ei näy ennen kuin käyttäjä painaa välilyöntiä tai enter-näppäintä.
Näytä koodi
- TabbedPaneActivationView.java
Poisto-optiot
Yksittäiset Tab-elementit voidaan asettaa suljettaviksi. Suljettavat välilehdet saavat sulkemispainikkeen välilehteen, joka laukaisee sulkemistapahtuman, kun sitä napsautetaan. TabbedPane määrää, miten tämä käytös käsitellään.
-
Manual: Oletusarvoisesti poisto on asetettuMANUAL, mikä tarkoittaa, että tapahtuma laukaistaan, mutta kehittäjän on itse käsiteltävä tämä tapahtuma haluamallaan tavalla. -
Auto: VaihtoehtoisestiAUTOvoidaan käyttää, mikä laukaisee tapahtuman ja poistaaTab:in komponentista kehittäjälle, jolloin kehittäjän ei tarvitse toteuttaa tätä käytöstä manuaalisesti.
Segmenttiohjaus 26.00
TabbedPane voidaan renderöidä segmenttiohjauksena ottamalla käyttöön segment-ominaisuus asetuksella setSegment(true). Tässä tilassa välilehdet näytetään liukuvalla pillinä, joka korostaa aktiivista valintaa, tarjoten tiiviin vaihtoehdon tavanomaiselle välilehtiliittymälle.
Näytä koodi
- TabbedPaneSegmentView.java
Tyylit
Laajuus ja teema
TabbedPane sisältää sisäänrakennetut Expanse ja Theme -vaihtoehdot, kuten muut webforJ-komponentit. Näitä voidaan käyttää nopeasti lisäämään tyylittelyä, joka välittää erilaisia merkityksiä loppukäyttäjälle ilman, että komponenttia tarvitsee tyylitellä CSS:llä.
Näytä koodi
- TabbedPaneExpanseThemeView.java
Parhaat käytännöt
Seuraavat käytännöt ovat suositeltavia TabbedPane:n hyödyntämisessä sovelluksissa:
-
Looginen ryhmittely: Käytä välilehtiä loogisesti ryhmitelläksesi liittyvää sisältöä
- Jokaisen välilehden tulisi esittää erillinen kategoria tai toiminto sovelluksessa
- Ryhmittele samankaltaiset tai loogiset välilehdet lähelle toisiaan
-
Rajoitetut välilehdet: Vältä käyttäjien ylivoimista liian monilla välilehdillä. Harkitse hierarkkisen rakenteen tai muiden navigointimallien käyttämistä puhtaamman käyttöliittymän saavuttamiseksi, kun se on tarpeen.
-
Selkeät etiketit: Merkitse välilehdet selkeästi intuitiivista käyttöä varten
- Tarjoa selkeät ja tiivistetyt etiketit jokaiselle välilehdelle
- Etiketit tulisi kuvastaa sisältöä tai tarkoitusta, mikä helpottaa käyttäjien ymmärtämistä
- Hyödynnä kuvakkeita ja erottuvia värejä tarvittaessa
-
Näppäimistön navigointi: Hyödynnä webforJ:n
TabbedPane-näppäimistön navigointitukea, jotta vuorovaikutusTabbedPane:n kanssa olisi sujuvampaa ja intuitiivisempaa loppukäyttäjälle. -
Oletusvälilehti: Jos oletusvälilehti ei ole
TabbedPane:n alussa, harkitse tämän välilehden asettamista oletukseksi oleelliselle tai usein käytetylle tiedolle.