Java - JCheckBoxMenuItem


Klasa JCheckBoxMenuItem predstavlja polje za potvrdu koja se mogu uključiti u meni. CheckBoxMenuItem može imati tekst ili grafičku ikonu ili oboje, pridružene njemu. MenuItem pruža mogućnost odabrati ili poništavanja odabir. Stavke menija se mogu konfigurisati i kontrolisati akcijama.



Ugnježdena klasa

Modifikator i tip Klasa Opis
protected class JCheckBoxMenuItem.AccessibleJCheckBoxMenuItem Ova klasa implementuje podršku pristupačnosti za klasu JcheckBoxMenuItem.


Konstruktor

Konstruktor Opis
JCheckBoxMenuItem() Kreira inicijalno odabranu stavku menija za potvrdu bez postavljenog teksta ili ikone.
JCheckBoxMenuItem(Action a) Kreira stavku menija čija su svojstva preuzeta iz dostavljene akcije.
JCheckBoxMenuItem(Icon icon) Kreira prvobitno odabranu stavku menija za potvrdu sa ikonom.
JCheckBoxMenuItem(String text) Kreira inicijalno odabranu stavku menija za potvrdu s tekstom.
JCheckBoxMenuItem(String text, boolean b) Kreira stavku menija u polju za potvrdu sa navedenim tekstom i stanjem odabira.
JCheckBoxMenuItem(String text, Icon icon) Kreira inicijalno odabranu stavku menija za potvrdu sa navedenim tekstom i ikonom.
JCheckBoxMenuItem(String text, Icon icon, boolean b) Kreira stavku menija u polju za potvrdu sa navedenim tekstom, ikonom i stanjem izbora.


Metode

Modifikator Metod Opis
AccessibleContext getAccessibleContext() Dobija AccessibleContext povezan sa ovim JCheckBoxMenuItem.
Object[] getSelectedObjects() Vraća niz (dužine 1) koji sadrži oznaku stavke menija u polju za potvrdu ili null ako polje za potvrdu nije označeno.
boolean getState() Vraća odabrano stanje stavke
String getUIClassID() Vraća ime klase L&F koja prikazuje ovu komponentu.
protected String paramString() Vraća string prikaz ovog JCheckBoxMenuItem.
void setState(boolean b) Postavlja odabrano stanje stavke.


Primjer Java JCheckBoxMenuItem

// Importovanje potrebnih biblioteka
import java.awt.event.ActionEvent;  
import java.awt.event.ActionListener;  
import java.awt.event.KeyEvent;  
import javax.swing.AbstractButton;  
import javax.swing.Icon;  
import javax.swing.JCheckBoxMenuItem;  
import javax.swing.JFrame;  
import javax.swing.JMenu;  
import javax.swing.JMenuBar;  
import javax.swing.JMenuItem;  
  
public class Main {  
    public static void main(final String args[]) {  
        // Kriranje forme i navigacije menija i omogućavanje zatvaranje forme klikom na X
        JFrame frame = new JFrame("Primjer Jmenu");  
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
        JMenuBar menuBar = new JMenuBar();  
        
        // Kriranje stavke menija i dodavanje u meni  
        JMenu fileMenu = new JMenu("Kursevi");  
        fileMenu.setMnemonic(KeyEvent.VK_F);  
        menuBar.add(fileMenu);  
        
        // Stavka menija koja se pojavljuje kada se klikne na stavku Kursevi 
        JMenuItem menuItem1 = new JMenuItem("Java", KeyEvent.VK_N);  
        fileMenu.add(menuItem1);  
        
        // Kriranje druge stavke menija koja sadrži polje za čekiranje
        JCheckBoxMenuItem caseMenuItem = new JCheckBoxMenuItem("Drugi kurs");  
        caseMenuItem.setMnemonic(KeyEvent.VK_C);  
        fileMenu.add(caseMenuItem);  
        
        // Omogućavanje odabira opcije klikom na stavku
        ActionListener aListener = new ActionListener() {  
            public void actionPerformed(ActionEvent event) {  
                AbstractButton aButton = (AbstractButton) event.getSource();  
                boolean selected = aButton.getModel().isSelected();  
                String newLabel;  
                Icon newIcon;  
                if (selected) {  
                    newLabel = "Vrijednost-1";  
                } else {  
                    newLabel = "Vrijednost-2";  
                }  
                aButton.setText(newLabel);  
            }  
        };  
        
        // Dodavanje stavki na Formu i podešavanje veličine forme
        caseMenuItem.addActionListener(aListener);  
        frame.setJMenuBar(menuBar);  
        frame.setSize(350, 250);  
        frame.setVisible(true);  
    }  
}

Prikaz koda iz gornjeg primjera izgledaće ovako: