Úvod do JToggleButton

JToggleButton je jednoducho vybraté a deaktivované tlačidlo s dvoma stavmi. Je to komponent Swing. Museli ste už počuť o políčku a prepínači. Je to úplne rovnaké. JRadioButton a JCheckBox sú v skutočnosti podtriedami triedy JToggleButton. Použitie JToggleButton je na zaregistrovanie voľby používateľa medzi dvoma možnosťami.

Napríklad môžeme mať viac JToggleButtonov špecifikujúcich názov jazyka na každom tlačidle a užívateľ vyberie / zruší výber (predvolené zruší sa) každé tlačidlo, aby určil, že pozná / nepozná príslušný jazyk. JToggleButton je v predvolenom nastavení v nezvolenom stave.

Vyhlásenie JToggleButton

public class JToggleButton
extends AbstractButton
implements Accessible

Kde,

  • Abstraktné tlačidlo definuje bežné funkcie tlačidiel a menu.
  • Prístupnosť je hlavným rozhraním balíka zjednodušenie ovládania. Obsahuje metódu „getAccessibleContext“, ktorá vracia prístupný text spojený s týmto tlačidlom.

Konštruktori JToggleButton

Nižšie sú uvedené rôzne konštruktory JToggleButton:

  • JToggleButton (): Tento konštruktor vytvorí nezvolené prepínacie tlačidlo bez textu alebo obrázka.
  • JToggleButton (Akcia a): Tento konštruktor vytvorí prepínacie tlačidlo s vlastnosťami z dodanej akcie.
  • JToggleButton (Text reťazca): Tento konštruktor vytvorí nezvolené prepínacie tlačidlo so zadaným textom a bez obrázka.
  • JToggleButton (ikona Ikona): Tento konštruktor vytvorí nezvolené prepínacie tlačidlo bez textu a zadaného obrázka.
  • JToggleButton (Text reťazca, ikona Ikona): Tento konštruktor vytvorí nezvolené prepínacie tlačidlo so zadaným textom a zadaným obrázkom.
  • JToggleButton (Text reťazca, vybratý boolean): Tento konštruktor vytvorí prepínacie tlačidlo bez obrázka, zadaného textu a zadaného stavu výberu.
  • JToggleButton (ikona Ikona, vybratá boolean): Tento konštruktor vytvorí prepínacie tlačidlo bez textu, zadaného obrázka a zadaného stavu výberu.
  • JToggleButton (Text reťazca, ikona ikony, vybratý boolean): Toto je konštruktor, v ktorom môžu byť poskytnuté všetky tri vlastnosti - stav výberu, text a obrázok.

Metódy JToggleButton

Nižšie sú uvedené rôzne metódy používané v JToggleButton:

  • public void setText (String text): Táto metóda nastavuje text, ktorý sa objaví na tlačidle.
  • public void setSelected (boolean b): Táto metóda nastavuje stav tlačidla. Ak je b pravdivé, tlačidlo sa zobrazí vybrané a ak je b nesprávne, toto tlačidlo sa javí ako nevybrané.
  • public void setEnabled (boolean b): Táto metóda sa používa na deaktiváciu tlačidla. Ak je b nesprávne, tlačidlo bude zobrazené sivou farbou a už naň nebude možné kliknúť.
  • public void setIcon (Icon defaultIcon): Táto metóda nastavuje ikonu pre toto tlačidlo. Táto ikona sa použije ako ikona „stlačené“ a „deaktivované“, ak nie je explicitne nastavená žiadna „stlačená“ ikona.
  • public void setPressedIcon (Icon pressIcon): Táto metóda nastavuje ikonu „stlačené“ pre toto tlačidlo. Táto ikona sa zobrazí vo chvíli, keď používateľ stlačí tlačidlo.
  • public AccessibleContext getAccessibleContext (): Táto metóda vracia prístupný kontext spojený s týmto tlačidlom.
  • protected String paramString (): Táto metóda vracia reťazcové znázornenie tohto tlačidla. Táto metóda slúži na účely ladenia. Návratová hodnota môže byť prázdna, ale nie nulová.
  • public String getUIClassID (): Táto metóda vracia názov triedy vzhľad a dojem (l & f) tohto tlačidla.
  • public void updateUI (): Obnoví vzhľad a dojem tohto tlačidla.
  • public void addActionListener (ActionListener l): Táto metóda pripojila poslucháča akcií k tomuto tlačidlu tak, aby sa akákoľvek akcia vykonaná na tomto tlačidle mohla zachytiť na koncovom zariadení.
  • public void addItemListener (ItemListener l): Táto metóda pripojí poslucháča položiek k tomuto tlačidlu tak, aby výber a zrušenie výberu tohto tlačidla bolo možné vykonať na koncovom zariadení.

Program na implementáciu JToggleButton

import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.ImageIcon;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JToggleButton;
import javax.swing.SwingConstants;
public class JToggleButtonDemo (
public static void main(String() args) (
JFrame app = new JFrame();
JToggleButton englishLanguage = new JToggleButton("English", true);
JToggleButton hindiLanguage = new JToggleButton();
JToggleButton marathiLanguage = new JToggleButton();
JToggleButton tamilLanguage = new JToggleButton();
app.setSize(400, 400);
app.setLayout(new GridLayout(6, 1));
app.setVisible(true);
englishLanguage.setText("English");
englishLanguage.setBackground(new Color(255, 66, 0));
hindiLanguage.setText("Hindi");
hindiLanguage.setBackground(new Color(255, 66, 0));
marathiLanguage.setText("Marathi");
marathiLanguage.setBackground(new Color(255, 66, 0));
tamilLanguage.setText("Tamil");
tamilLanguage.setBackground(new Color(255, 66, 0));
app.add(englishLanguage);
app.add(hindiLanguage);
app.add(marathiLanguage);
app.add(tamilLanguage);
JLabel action = new JLabel();
app.add(action);
JLabel status = new JLabel("User knows : English");
app.add(status);
ItemListener listener = new ItemListener() (
@Override
public void itemStateChanged(ItemEvent e) (
StringBuilder statusString = new StringBuilder("User knows :");
if (englishLanguage.isSelected()) (
statusString.append(" English");
)
if (hindiLanguage.isSelected()) (
statusString.append(" Hindi");
)
if (marathiLanguage.isSelected()) (
statusString.append(" Marathi");
)
if (tamilLanguage.isSelected()) (
statusString.append(" Tamil");
)
if (englishLanguage.isSelected() == false && hindiLanguage.isSelected() == false
&& marathiLanguage.isSelected() == false && tamilLanguage.isSelected() == false) (
status.setText("User doesn't know any language !!");
) else (
status.setText(statusString.toString());
)
)
);
ActionListener actionListener = new ActionListener() (
@Override
public void actionPerformed(ActionEvent e) (
JToggleButton temp = (JToggleButton) e.getSource();
if (temp.isSelected()) (
action.setText("Current action : " + temp.getActionCommand() + " is selected");
) else (
action.setText("Current action : " + temp.getActionCommand() + " is de-selected");
)
)
);
englishLanguage.addItemListener(listener);
englishLanguage.addActionListener(actionListener);
hindiLanguage.addItemListener(listener);
hindiLanguage.addActionListener(actionListener);
marathiLanguage.addItemListener(listener);
marathiLanguage.addActionListener(actionListener);
tamilLanguage.addItemListener(listener);
tamilLanguage.addActionListener(actionListener);
)
)

vysvetlenie

  • Tento program je veľmi jednoduchý a samovysvetľujúci. Zhromažďuje informácie o používateľovi, o ktorých všetkých jazykoch vie.
  • Najprv sme vytvorili rámec s veľkosťou 400 x 400 pixelov, ktorý má jeden stĺpec a päť riadkov.
  • Vytvorené štyri prepínacie tlačidlá pre štyri rôzne jazyky - angličtinu, hindčinu, maráthčinu a tamilčinu a pridané do rámu kontajnera.
  • Nastavili sme farbu pozadia týchto tlačidiel na červenú (pokiaľ nie je vybratá).
  • Potom do piateho riadku v rámčeku bol pridaný štítok, ktorý zobrazuje stav aplikácie.
  • Na začiatku sa vyberie tlačidlo pre anglický jazyk pomocou konštruktora JToggleButton, čo znamená, že používateľ predvolene pozná anglický jazyk a všetky ostatné tlačidlá sa zrušia.
  • Na určenie známeho jazyka musí užívateľ kliknúť na (vybrať) konkrétne tlačidlo. Užívatelia môžu znova kliknúť na vybraté tlačidlo, čím zrušíte výber.
  • Keď je tlačidlo vybrané alebo zrušené, udalosť sa spustí a uloží do vyrovnávacej pamäte v ItemListener a podľa toho sa zmení aj stav.
  • Aby sa skontrolovala aktuálna akcia, vytvorí sa zoznam akcií a priloží sa ku každému tlačidlu tak, aby sa pri výbere alebo zrušení výberu jazyka používateľovi zobrazila vykonaná akcia.
  • Použitý môže vybrať alebo zrušiť výber jedného alebo viacerých jazykov a zodpovedajúcim spôsobom zobraziť stav.

Výkon:

1. Toto je naša aplikácia, v ktorej je predvolene vybraný anglický jazyk.

2. Užívateľ si vybral jazyk „Marathi“ a stav a činnosť sa podľa toho zmenili.

3. Používateľ zrušil výber „anglického“ jazyka a stav a činnosť sa podľa toho zmenili.

4. Užívateľ zrušil výber jazyka „Marathi“ a stav sa podľa toho zmenil.

záver

JToggleButton je dôležitou súčasťou Swing, ktorá uľahčuje špecifikovať výber medzi dvoma možnosťami alebo odpoveďami, ako je áno alebo nie, ako je to znázornené na príklade. Môžeme tiež použiť začiarkavacie políčka alebo prepínače, ktoré sú podtriedami JToggleButton.

Odporúčané články

Toto je príručka pre JToggleButton. Tu diskutujeme konštruktory a metódy JToggleButton spolu s jeho programom. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  1. JPanel v Jave
  2. JButton v Jave
  3. JOptionPane v Jave
  4. JScrollPane v Jave
  5. JFrame v Jave
  6. JLabel v Jave
  7. Ako vytvoriť rádiobutton?

Kategórie: