JSpinner - Konštruktory, syntax a metódy JSpinner s príkladmi

Obsah:

Anonim

Úvod do JSpinner

JSpinner je komponent, ktorý nám umožňuje vybrať vstup, ktorým môže byť objekt alebo číselná hodnota z usporiadanej sekvencie zo vstupného poľa. JSpinner je trieda a je k dispozícii v balíku javax.swing. Rovnako ako jeho názov napovedá, že točí jeho hodnotu smerom nahor a nadol, neobsahuje rozbaľovací zoznam na výber vstupu. V podstate obsahuje šípky nahor a nadol. Keď sa pokúsite stlačiť šípky, ukazuje nám to vstup podľa našich požiadaviek.

Konštruktori JSpinner

JSpinner obsahuje dvoch konštruktorov, ktoré fungujú takto:

  1. JSpineer (): Vytvorí prázdny číselník s predvolenou hodnotou nastavenou na nulu. Je to akýsi predvolený konštruktor bez argumentov.
  2. JSpineer (model SpineerModel): SprineerModel berie ako argument, ktorý určuje jeho sekvenčnú hodnotu.

Syntax triedy Jspineer

public class JSpinner extends JComponent
implements Accessible

Trieda JSpinner rozširuje triedu JComponent a implementuje prístupné rozhranie. Tu je JComponent vynikajúcou triedou pre všetky výkyvné komponenty. Akákoľvek trieda, ktorej meno začína na „J“, je podradenou triedou pre Jcomponent. Jcomponent ďalej rozširuje triedu kontajnerov. Táto trieda nám poskytuje podporu pri pridávaní komponentov do kontajnera. Teraz prístupné rozhranie nám poskytuje rôzne triedy a rozhrania, ktoré sa používajú na definovanie zmluvy medzi podpornou technológiou a prístupnou aplikáciou. Vracia objekt objektu AccessibleContext, ktorý sa otočí a poskytuje informácie o ďalších komponentoch.

Metódy JSpineer

Rôzne metódy dostupné v JSpineer:

  • SpineerNumberModel (int hodnota, int max, int min, int krok): Táto metóda trvá štyri argumenty. Počiatočná hodnota hodnoty Spinner by bola hodnota nastavená v parametri „value“. Teraz môžeme zadať maximálnu hodnotu pre spinák, tj parameter „max“, tiež môžeme definovať minimálnu hodnotu, tj „min“ parameter a posledným parametrom je „krok“, ktorý je zodpovedný za zvýšenie alebo zníženie hodnoty spinálnej sily so stanoveným rozdielom.,
  • SpineerListModel (List I): Vytvára objekt modelu spineer s prvkom List. Vyžaduje sa predloženie iba jedného argumentu.
  • getPreviousValue (): Táto metóda sa dá povedať, pôsobí ako pohlcovač plynu pre túto triedu získať predchádzajúce hodnotu rozvlákňovača.
  • getnextValue (): Táto metóda slúži ako getter, aby získala ďalšiu hodnotu chrbtice.
  • setValue (Object v): Táto metóda slúži ako nastavovacia metóda na nastavenie hodnoty objektu odovzdaného ako argument.
  • getValue (): Toto je tiež metóda getteru, ktorá vracia aktuálnu hodnotu chrbtice.

Príklady Jspineera

Pozrime sa teraz na niektoré príklady.

Príklad č. 1

V tomto príklade vytvoríme základné JSpineer pre začiatočníkov. Vytvoríme jednoduchú triedu java, ktorá v nej rozšíri JFrame, potrebujeme vytvoriť objekt JFrame, JSpineer obe tieto triedy sú dostupné v balíku javax.swing. Hranice pre rozmetávač môžeme nastaviť volaním metódy setBounds (), ktorá berie štyri argumenty. Potom musíme definovať rozloženie pre náš rámec volaním setLayout (). Nakoniec potrebujeme pridať náš komponent JSpinner do rámcového objektu a nakoniec definujeme veľkosť nášho rámca volaním setSize (), ktorá vezme dva argumenty.

Nižšie nájdete príklad JSpinnera.

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();
)
)

Stačí ho spustiť ako aplikáciu java, otvorí sa nové okno, ktoré bude obsahovať váš Jspineer vo vnútri rámu. Nižšie nájdete pripojený výstup.

Teraz môžeme stlačením šípky zmeniť hodnotu rozmetávača.

Príklad č. 2

Teraz uvidíme ďalší príklad, ako si zvoliť dátum narodenia od Jspineera.

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());
)
)

Nižšie nájdete výstup vyššie uvedeného programu.

Tu definujeme tri rozmetadlá pre rok, mesiac a dátum. Takže tu definujeme tri rozmetadlá.

Záver - JSpinner

JSpinner sa môže použiť tam, kde je potrebné zadať číslo alebo typ objektu v sekvencii alebo poradí. Ktorý môže byť buď prírastok alebo úbytok a poradie hodnoty by malo pretrvávať. V tomto scenári môžeme ísť na JSpineer.

Odporúčané články

Toto je príručka pre JSpinner. Tu diskutujeme konštruktory, syntax a metódy JSpinner spolu s rôznymi príkladmi a implementáciou kódu. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  1. JTextField v Jave (metóda, príklady)
  2. Použitie JDialogu v Jave
  3. JScrollPane v Jave (príklady)
  4. Čo sú anotácie v jazyku Java?
  5. JLabel v Jave