Java - AWT Checkbox


Klasa Checkbox se koristi za kreiranje polja za potvrdu. Koristi se za uključivanje opcije (true) ili isključenje (false). Klikom na polje za potvrdu mijenja se njegovo stanje iz "uključeno" u "isključeno" ili iz "isključeno" u "uključeno". Deklaracija klase AWT Checkbox se može napisati kao:

public class Checkbox extends Component implements ItemSelectable, Accessible  


Konstruktori klasa Checkbox

Sljedeća tabela prikazuje tipove konstruktora klase Checkbox

Konstruktor Opis
Checkbox() Konstruiše potvrdni okvir bez stringa kao oznake.
Checkbox(String label) Konstruiše potvrdni okvir sa datom oznakom.
Checkbox(String label, boolean state) Konstruiše okvir za potvrdu sa datom oznakom i postavlja dato stanje.
Checkbox(String label, boolean state, CheckboxGroup group) Konstruiše polje za potvrdu sa datom oznakom, postavlja dato stanje u navedenu grupu za potvrdu.
Checkbox(String label, CheckboxGroup group, boolean state) Konstruiše polje za potvrdu sa datom oznakom, u datoj grupi za potvrdu i postavlja na navedeno stanje.


Metode nasljeđivanja

Metode klase Checkbox nasljeđuju sljedeće klase:

  • java.awt.Component
  • java.lang.Object


Klase metode Checkbox

Sljedeća tabela prikazuje tipove metoda klase Checkbox

Metoda Opis
void addItemListener(ItemListener IL) Dodaje dati slušač stavke da bi dobio događaje stavke iz okvira za potvrdu.
AccessibleContext getAccessibleContext() Dohvata pristupačni kontekst okvira za potvrdu.
void addNotify() Kreira ravnopravan okvir za potvrdu.
CheckboxGroup getCheckboxGroup() Određuje grupu polja za potvrdu.
ItemListener[] getItemListeners() Vraća niz slušalaca stavki registrovanih u polju za potvrdu.
String getLabel() Dobijanje oznake polja za potvrdu.
T[] getListeners(Class listenerType) Vraća niz svih objekata registrovanih kao FooListeners.
Object[] getSelectedObjects() Vraća niz (veličina 1) koji sadrži oznaku polja za potvrdu i vraća null ako polje za potvrdu nije odabrano.
boolean getState() Vraća true ako je polje za potvrdu uključeno (on), inače se vraća isključeno (off).
protected String paramString() Vraća string koji predstavlja stanje polja za potvrdu.
protected void processEvent(AWTEvent e) Obrađuje događaj u okviru za potvrdu.
protected void processItemEvent(ItemEvent e) Obrađuje događaje stavke koji se javljaju u polju za potvrdu tako što ih šalje na registrovani ItemListener objekt.
void removeItemListener(ItemListener l) Uklanja specifikovani slušalac stavke tako da slušalac stavke više ne prima događaje stavke iz okvira za potvrdu.
void setCheckboxGroup(CheckboxGroup g) Postavlja grupu polja za potvrdu na dato polje za potvrdu.
void setLabel(String label) Postavlja oznaku polja za potvrdu na argument string.
void setState(boolean state) Postavlja stanje polja za potvrdu na navedeno stanje.


Primjer Java AWT Checkbox

U sljedećem primjeru kreiramo dva potvrdna okvira pomoću konstruktora Checkbox(String label) i dodajemo ih u okvir pomoću metode add().

// Importovanje AWT klase  
import java.awt.*; 

public class Main  
{    
    // Konstruktor za inicijalizaciju
    Main() {    
        // Kreiranje okvira sa naslovom 
        Frame f = new Frame("Primjer Checkbox"); 
       
        // Kreiranje potvrdnih okvira (checkboxes)  
        Checkbox checkbox1 = new Checkbox("Python");    
        checkbox1.setBounds(100, 100,  70, 50);    
        Checkbox checkbox2 = new Checkbox("Java", true);   
        
        // Postavljanje lokacije checkbox-a u okviru         
        checkbox2.setBounds(100, 150,  50, 50);    
        
        // Dodavanje okvira za potvrdu (checkboxes) u okvir  
        f.add(checkbox1);    
        f.add(checkbox2);    
  
        // Podešavanje veličine, rasporeda i vidljivosti okvira  
        f.setSize(400,400);    
        f.setLayout(null);    
        f.setVisible(true);    
     }    
// Metoda main
public static void main (String args[])    
    {    
        new Main();    
    }    
}

Prikaz koda iz gornjeg primjera izgledaće ovako:



Primjer Java AWT Checkbox sa ItemListener

U sljedećem primjeru kreirali smo dva polja za potvrdu i dodali ih u okvir. Ovdje dodajemo ItemListener sa potvrdnim okvirom koji prikazuje stanje potvrdnog okvira (bez obzira da li je označeno ili neoznačenoo) koristeći metodu getStateChange().

// Importovanje potrebnih biblioteka  
import java.awt.*;    
import java.awt.event.*;  

public class Main  
{    
     // Konstruktor za inicijalizaciju 
     Main() {    
        // Kreiranje okvira (Frame)
        Frame f = new Frame ("Primjer CheckBox");   
        
        // Kreiranje label-a 
        final Label label = new Label();  
        
        // Postavljanje poravnanja, veličine label-a    
        label.setAlignment(Label.CENTER);    
        label.setSize(400,100);    
        
        // Kreiranje potvrdnih okvira (checkboxes)  
        Checkbox checkbox1 = new Checkbox("Python");    
        checkbox1.setBounds(100, 100,  70, 50);    
        Checkbox checkbox2 = new Checkbox("Java");    
        checkbox2.setBounds(100, 150,  50, 50); 
        
        // Dodavanje okvira za potvrdu u okvir
        f.add(checkbox1);  
        f.add(checkbox2);   
        f.add(label);    
  
        // Dodavanje događaja u potvrdne okvire 
        checkbox1.addItemListener(new ItemListener() {    
             public void itemStateChanged(ItemEvent e) {                 
                label.setText("Potvrdili ste Python: "     
                + (e.getStateChange()==1?"Potvrđeno":"Nepotvrđeno"));    
             }    
          });    
        checkbox2.addItemListener(new ItemListener() {    
             public void itemStateChanged(ItemEvent e) {                 
                label.setText("Potvrdili ste Java: "     
                + (e.getStateChange()==1?"Potvrđeno":"Nepotvrđeno"));    
             }    
          });    
        // Podešavanje veličine, rasporeda i vidljivosti okvira  
        f.setSize(400,400);    
        f.setLayout(null);    
        f.setVisible(true);    
     }    
// Metoda main
public static void main(String args[])    
    {    
        new Main();    
    }    
}  

Prikaz koda iz gornjeg primjera izgledaće ovako: