JSpinner - JSpinnerin rakentajat, syntaksi ja menetelmät esimerkkien avulla

Sisällysluettelo:

Anonim

Johdanto JSpinneriin

JSpinner on komponentti, jonka avulla voimme valita syötteen, joka voi olla objekti tai numeron arvo tilatusta sekvenssistä syöttökentästä. JSpinner on luokka ja sitä on saatavana javax.swing-paketissa. Kuten nimensä osoittaa, se pyörittää arvoaan ylöspäin ja alaspäin, eikä se sisällä avattavaa luetteloa tulon valitsemiseksi. Pohjimmiltaan se sisältää nuolet ylös ja alas. Kun yritämme painaa nuolia, se näyttää meille syötteen vaatimuksemme mukaan.

JSpinnerin rakentajat

JSpinner sisältää kaksi konstruktoria, jotka toimivat seuraavasti:

  1. JSpineer (): Se tekee tyhjän kehrän oletusarvoksi nolla. Se on eräänlainen oletusrakentaja, jolla ei ole argumentteja.
  2. JSpineer (SpineerModel-malli): Se pitää SprineerModelia argumenttina, joka päättää sen sekvenssiarvon.

Jspineer-luokan syntaksi

public class JSpinner extends JComponent
implements Accessible

JSpinner-luokka laajentaa JComponent-luokkaa ja toteuttaa pääsyrajapinnan. Täällä JComponent on superluokka kaikille kääntökomponenteille. Jokainen luokka, jonka nimi alkaa 'J', on Jcomponentin lapsiluokka. Jcomponent laajentaa edelleen konttiluokkaa. Tämä luokka tarjoaa meille tukea komponenttien lisäämiselle konttiin. Nyt saatavissa oleva käyttöliittymä tarjoaa meille erilaisia ​​luokkia ja rajapintoja, joita käytetään määrittelemään sopimus avustekniikan ja saavutettavan sovelluksen välillä. Se palauttaa AccessibleContext-objektin objektin, joka kääntyy antamaan tietoja muista komponenteista.

JSpineer-menetelmät

Erilaisia ​​menetelmiä JSpineerissä:

  • SpineerNumberModel (int-arvo, int max, int min, int askel): Tämä menetelmä vie neljä argumenttia. Spinnerin alkuarvo olisi arvo, joka on asetettu 'arvo' -parametriin. Nyt voimme määrittää selkärangan maksimiarvon eli 'max' -parametrin, voimme myös määritellä minimiarvon eli 'min' -parametrin ja viimeinen parametri on 'askel', joka vastaa selkärangan arvon kasvattamisesta tai pienentämisestä määritellyllä erolla .
  • SpineerListModel (Lista I): Se luo selkärankaisen malliobjektin Lista-elementillä. Se vaatii vain yhden väitteen välittämisen.
  • getPrevableValue (): Tämä menetelmä, jonka voimme sanoa, toimii tämän luokan getterina saadaksesi kehrän aikaisemman arvon.
  • getnextValue (): Tämä menetelmä toimii getterina saadaksesi selkärangan seuraavan arvon.
  • setValue (Object v): Tämä menetelmä toimii setter -menetelmänä argumentiksi välitetyn objektin arvon asettamiseksi.
  • getValue (): Tämä on myös getter-menetelmä, joka palauttaa selkärangan nykyisen arvon.

Esimerkkejä Jspineeristä

Katsokaamme nyt joitain esimerkkejä.

Esimerkki # 1

Tässä esimerkissä luomme JSpineer-perustason aloittelijoille. Luomme yksinkertaisen java-luokan, joka laajentaa JFrame-sisältöä sen sisällä. JFrame-objektin luomiseen tarvitaan JSpineer. Molemmat nämä luokat ovat saatavilla javax.swing-paketissa. Voimme asettaa kehruun rajat kutsumalla setBounds () -menetelmään, joka vie neljä argumenttia. Sitten meidän on määritettävä kehyksen asettelu soittamalla setLayout (). Viimeinkin meidän on lisättävä JSpinner-komponentti kehysobjektiin ja lopuksi määrittelemme kehysmme koon kutsumalla setSize (), joka vie kaksi argumenttia.

Alta löydät JSpinner-esimerkin.

import javax.swing.JFrame;
import javax.swing.JSpinner;
public class SpineerDemo extends JFrame (
// frame
static JFrame frame;
// default constructor
SpineerDemo()
(
)
// main class
public static void main(String() args)
(
// create a new frame
frame = new JFrame("spinner");
// create a JSpinner
JSpinner spineer = new JSpinner();
// set Bounds for spinner
spineer.setBounds(100, 100, 50, 40);
// set layout for frame
frame.setLayout(null);
// add panel to frame
frame.add(spineer);
// set frame size
frame.setSize(400, 400);
frame.show();
)
)

Suorita vain Java-sovelluksena uusi ponnahdusikkuna, joka sisältää Jspineer-kehyksesi sisällä. Löydä alla oleva lähtö liitteenä.

Nyt voimme muuttaa nuoran arvoa painamalla nuolta.

Esimerkki 2

Nyt näemme vielä yhden esimerkin syntymäajan valitsemiseksi Jspineeristä.

package com.cont.article;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JSpinner;
import javax.swing.SpinnerListModel;
import javax.swing.SpinnerNumberModel;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
public class DateOfBirthSpinner extends JFrame implements ChangeListener (
// frame
static JFrame frame;
// define label
static JLabel label, label1;
// define spinner
static JSpinner spineer, spineer1, spineer2;
// default constructor for class
DateOfBirthSpinner()
(
)
// main class
public static void main(String() args)
(
// createing an object of the class
DateOfBirthSpinner sp1 = new DateOfBirthSpinner();
// create a new frame
frame = new JFrame("spinner");
// create a label
label = new JLabel("select your date of birth");
label1 = new JLabel("1 October 2010");
// create a JSpinner with a minimum, maximum and step value
spineer = new JSpinner();
spineer1 = new JSpinner(new SpinnerNumberModel(1, 1, 31, 1));
// setvalue of year initializing year
spineer.setValue(2000);
// store the months create array
String months() = ( "January", "February", "March",
"April", "May", "June", "July", "August",
"September", "October", "Novemeber", "December" );
// create a JSpinner with list of values
spineer2 = new JSpinner(new SpinnerListModel(months));
// adding change listener to spinner
spineer.addChangeListener(sp1);
spineer1.addChangeListener(sp1);
spineer2.addChangeListener(sp1);
// set Bounds for all three spinner
spineer.setBounds(70, 70, 50, 40);
spineer1.setBounds(70, 130, 50, 40);
spineer2.setBounds(70, 200, 90, 40);
// setbounds for all label
label.setBounds(10, 10, 150, 20);
label1.setBounds(10, 300, 150, 20);
// set layout for frame
frame.setLayout(null);
// add label to frame object
frame.add(label);
frame.add(label1);
frame.add(spineer);
frame.add(spineer1);
frame.add(spineer2);
// add panel to frame object
frame.add(spineer);
// set frame size
frame.setSize(300, 300);
frame.show();
)
// if the state is changed for spinner set value to label
public void stateChanged(ChangeEvent e)
(
label1.setText(spineer1.getValue() + " " + spineer2.getValue() + " " + spineer.getValue());
)
)

Alta löydät yllä olevan ohjelman tulosteen.

Määrittelemme tässä kolme kehruuta vuodelle, kuukaudelle ja päivämäärälle. Joten määrittelemme täällä kolme kehruulaitetta.

Johtopäätös - JSpinner

JSpinneriä voidaan käyttää, kun numero- tai kohdetyyppituloa vaaditaan järjestyksessä tai järjestyksessä. Joka voi olla joko lisäys tai vähennys ja arvojärjestys säilyy. Siinä tilanteessa voimme mennä JSpineerille.

Suositellut artikkelit

Tämä on opas JSpinneriin. Tässä keskustellaan JSpinnerin rakentajista, syntaksista ja menetelmistä sekä erilaisista esimerkeistä ja koodin toteutuksesta. Voit myös katsoa seuraavia artikkeleita saadaksesi lisätietoja -

  1. JTextField Java (menetelmä, esimerkit)
  2. JDialog-käyttö Java-sovelluksissa
  3. JScrollPane Java (esimerkit)
  4. Mitä Java-merkinnät ovat?
  5. JLabel Java