Introduktion till JToggleButton

JToggleButton är helt enkelt en tvåstatsknapp vald och avmarkerad. Det är en Swing-komponent. Du måste ha hört talas om kryssrutan och alternativknappen. Det är exakt samma. I själva verket är JRadioButton och JCheckBox underklasser av klassen JToggleButton. Användning av JToggleButton är att registrera användarens val mellan två val.

Vi kan till exempel ha flera JToggleButtons som anger språknamnet på varje knapp och användaren kommer att välja / avmarkera (standard avmarkerad) varje knapp för att specificera att han / hon vet / inte känner respektive språk. JToggleButton är som standard i det avmarkerade tillståndet.

Förklaring av JToggleButton

public class JToggleButton
extends AbstractButton
implements Accessible

Var,

  • AbstractButton definierar vanliga funktioner för knappar och menyalternativ.
  • Accessible är huvudgränssnittet för tillgänglighetspaketet. Den innehåller en metod "getAccessibleContext" som returnerar AccessibleContext associerad med den här knappen.

Konstruktörer av JToggleButton

Nedan visas de olika konstruktörerna av JToggleButton:

  • JToggleButton (): Den här konstruktören skapar en ovalad vippknapp utan text eller bild.
  • JToggleButton (Åtgärd a): Denna konstruktör skapar en vippknapp med egenskaper från tillhandahållen åtgärd.
  • JToggleButton (Stringtext): Den här konstruktören skapar en ovalad vippknapp med den angivna texten och ingen bild.
  • JToggleButton (ikonikon): Den här konstruktören skapar en ovalad vippknapp utan text och angiven bild.
  • JToggleButton (Stringtext, ikonikon): Den här konstruktören skapar en ovalad vippknapp med den angivna texten och den angivna bilden.
  • JToggleButton (Stringtext, boolean vald): Den här konstruktören skapar en vippknapp utan bild, specificerad text och det angivna markeringsläget.
  • JToggleButton (Ikonikon, booleska vald): Den här konstruktören skapar en vippknapp utan text, angiven bild och specificerat valstatus.
  • JToggleButton (strängtext, ikonikon, booleska vald): Detta är konstruktören där alla tre egenskaperna kan tillhandahållas - valstat, text och bild.

Metoder för JToggleButton

Nedan är de olika metoderna som används i JToggleButton:

  • public void setText (String text): Den här metoden ställer in texten som visas på knappen.
  • public void setSelected (boolean b): Den här metoden ställer in status för knappen. Om b är sant visas knappen vald och om b är falsk visas knappen avmarkerad.
  • public void setEnabled (boolean b): Den här metoden används för att inaktivera knappen. Om b är falsk, kommer knappen att gråas ut och inte längre klickbar.
  • public void setIcon (Icon defaultIcon): Den här metoden anger ikonen för den här knappen. Denna ikon kommer att användas som en "tryckt" och "inaktiverad" ikon om ingen "pressad" ikon är inställd uttryckligen.
  • public void setPressionIcon (Icon pressedIcon): Den här metoden ställer in ikonen "pressad" för denna knapp. Den här ikonen visas när användaren trycker på knappen.
  • public AccessibleContext getAccessibleContext (): Den här metoden returnerar det tillgängliga sammanhanget som är associerat med den här knappen.
  • skyddad String paramString (): Den här metoden returnerar strängrepresentation av denna knapp. Den här metoden är avsedd för felsökning. Returvärdet kan vara tomt men inte noll.
  • public String getUIClassID (): Denna metod returnerar namnet på look and feel (l & f) -klass för denna knapp.
  • public void updateUI (): Återställer utseendet och känslan på denna knapp.
  • public void addActionListener (ActionListener l): Den här metoden fäst en åtgärdslyssnare till denna knapp så att alla åtgärder som utförs på den här knappen kan fångas i backend.
  • public void addItemListener (ItemListener l): Den här metoden fäster en objektlistare till denna knapp så att valet och avmarkeringen av denna knapp kan hanteras i backend.

Program för att implementera 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);
)
)

Förklaring

  • Detta program är mycket enkelt och självförklarande. Den samlar in användarinformation om vilka språk han / hon känner.
  • Först har vi skapat en ram med storlek 400 x 400 pixlar och har en kolumn och fem rader.
  • Skapade fyra växelknappar för fyra olika språk - engelska, hindi, marathi och tamil och läggs till i behållarramen.
  • Vi har ställt in bakgrundsfärgen på dessa knappar till röd (tills den inte har valts).
  • Tillsatt sedan en etikett i den femte raden i ramen för att visa status för applikationen.
  • Inledningsvis väljs en knapp för det engelska språket med hjälp av konstruktören för JToggleButton vilket innebär att användaren känner engelska som standard och att alla andra knappar avmarkeras.
  • För att ange det kända språket måste användaren klicka på (välj) den specifika knappen. Användare kan klicka igen på vald knapp för att avmarkera den.
  • När en knapp är vald eller avmarkerad avfyras en cache i cache i en ItemListener och status ändras i enlighet därmed.
  • För att kontrollera den aktuella åtgärden skapas en ActionListener och bifogas till varje knapp så att när ett språk väljs eller avmarkeras visas utförd åtgärd för användaren.
  • Används kan välja eller avmarkera ett eller flera språk och se status därefter.

Produktion:

1. Detta är vår applikation där det engelska språket väljs som standard.

2. Användaren har valt “Marathi” -språk och status och åtgärd ändras i enlighet med detta.

3. Användaren har valt “engelska” språk och status och åtgärd ändras i enlighet med detta.

4. Användaren har valt “Marathi” -språk och status ändras i enlighet med detta.

Slutsats

JToggleButton är en viktig komponent i Swing som gör det enkelt att ange ett val mellan två val eller svar som ja eller nej som visas i exemplet. Vi kan också använda kryssrutor eller radioknappar som är underklasser av JToggleButton.

Rekommenderade artiklar

Detta är en guide till JToggleButton. Här diskuterar vi konstruktörer och metoder för JToggleButton tillsammans med dess program. Du kan också titta på följande artiklar för att lära dig mer -

  1. JPanel i Java
  2. JButton i Java
  3. JOptionPane i Java
  4. JScrollPane i Java
  5. JFrame i Java
  6. JLabel i Java
  7. Hur skapar jag en RadioButton?

Kategori: