Java - AWT List


Objekt klase List predstavlja listu tekstualnih stavki. Uz pomoć klase List, korisnik može izabrati ili jednu stavku ili više stavki. Nasljeđuje klasu Component. Deklaracija klase AWT liste se može napisati kao:

public class List extends Component implements ItemSelectable, Accessible  


Konstruktori klase List

Sljedeća tabela prikazuje tip konstruktora klase List

Konstruktor Opis
List() Konstruiše novu listu za pomjeranje.
List(int row_num) Konstruiše novu listu za pomjeranje, inicijalizovanu sa datim brojem vidljivih redova.
List(int row_num, Boolean multipleMode) Konstruiše novu inicijalizovanu listu za pomeranje koja prikazuje zadati broj redova.


Metode nasljeđene klasom List

Metode klase List nasljeđuju sljedeće klase:

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


Metode nasljeđene od klase List

Metode klase List nasljeđuju sljedeće klase:

Metoda Opis
void add(String item) Dodaje navedenu stavku na kraj liste za pomicanje.
void add(String item, int index) Dodaje navedenu stavku u listu na datoj poziciji indeksa.
void addActionListener(ActionListener l) Dodaje specifikovani slušač radnji da prima događaje akcije sa liste.
void addItemListener(ItemListener l) Dodaje specifikovani slušač stavki da prima događaje sa liste.
void addNotify() Stvara ravnopravnu listu.
void deselect(int index) Poništava odabir stavke na datoj poziciji indeksa.
AccessibleContext getAccessibleContext() Dohvata pristupačni kontekst vezan za listu.
ActionListener[] getActionListeners() Vraća niz slušalaca akcija registrovanih na listi.
String getItem(int index) Dohvata stavku koja se odnosi na datu poziciju indeksa.
int getItemCount() Dobija bojač / broj stavki na listi.
ItemListener[] getItemListeners() Vraća niz slušalaca stavki registrovanih na listi.
String[] getItems() Dohvatio je stavke sa liste.
Dimension getMinimumSize() Dobija minimalnu veličinu liste za pomicanje.
Dimension getMinimumSize(int rows) Dobija minimalnu veličinu liste sa datim brojem redova.
Dimension getPreferredSize() Dobija željenu veličinu liste.
Dimension getPreferredSize(int rows) Dobija željenu veličinu liste sa datim brojem redova.
int getRows() Dobija broj vidljivih redova na listi.
int getSelectedIndex() Dobija indeks odabrane stavke liste.
int[] getSelectedIndexes() Dobija odabrane indekse liste.
String getSelectedItem() Dobija odabranu stavku na listi.
String[] getSelectedItems() Dobija odabrane stavke na listi.
Object[] getSelectedObjects() Dobija odabrane stavke na listi za pomicanje u nizu objekata.
int getVisibleIndex() Dobija indeks stavke koja je postala vidljiva metodom makeVisible()
void makeVisible(int index) Čini stavku u datom indeksu vidljivom.
boolean isIndexSelected(int index) Vraća true ako je odabrana data stavka na listi.
boolean isMultipleMode() Vraća true ako lista dozvoljava višestruke odabire.
protected String paramString() Vraća string parametara koji predstavlja stanje liste za pomicanje.
protected void processActionEvent(ActionEvent e) Obrađuje događaje akcije koji se javljaju na listi tako što ih šalje na registrovani ActionListener objekt.
protected void processEvent(AWTEvent e) Obrađuje događaje na listi za pomicanje.
protected void processItemEvent(ItemEvent e) Obrađuje događaje stavke koji se javljaju na listi tako što ih šalje na registrovani ItemListener objekt.
void removeActionListener(ActionListener l) Uklanja specifikovani slušalac radnje. Zbog toga ne prima dalje radnje sa liste.
void removeItemListener(ItemListener l) Uklanja specificirani slušalac stavke. Zbog toga ne prima dalje radnje sa liste.
void remove(int position) Uklanja stavku na datoj poziciji indeksa sa liste.
void remove(String item) Uklanja prvo pojavljivanje stavke sa liste.
void removeAll() Uklanja sve stavke sa liste.
void replaceItem(String newVal, int index) Zamjenjuje stavku na datom indeksu na listi sa novim specifikovanim stringom.
void select(int index) Bira stavku na datom indeksu na listi.
void setMultipleMode(boolean b) Postavlja zastavicu koja određuje da li će lista dozvoliti višestruki izbor ili ne.
void removeNotify() Uklanja ravnopravnu listu.


Primjer Java AWT List

U sljedećem primjeru kreiramo komponentu liste sa 5 redova i dodajemo je u okvir.

// Impotovanje awt klase  
import java.awt.*;    
  
public class Main  
{    
       // Konstruktor klase  
        Main() {    
        // Kreiranje okvira (Frame)
        Frame f = new Frame("Primjer List");  
        
        // Kreiranje liste od 5 redova 
        List l1 = new List(5);   
  
        // Postavljanje pozicije komponente liste   
        l1.setBounds(100, 100, 75, 75);    
  
        // Dodavanje stavki liste na listu 
        l1.add("Stavka 1");    
        l1.add("Stavka 2");    
        l1.add("Stavka 3");    
        l1.add("Stavka 4");    
        l1.add("Stavka 5");    
  
        // Dodavanje liste u okvir 
        f.add(l1);   
  
        // 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 List sa ActionListener

U sljedećem primjeru kreiramo dvije komponente liste, dugme i oznaku (Label) i dodajemo ih u okvir. Ovdje generišemo događaj na dugmetu koristeći metodu addActionListener(ActionListener l). Klikom na dugme prikazuje se izabrani programski jezik i okvir (Label).

// Importovanje awt i event klasa  
import java.awt.*;    
import java.awt.event.*;    
  
public class Main    
{    
     // Konstruktor klase 
     Main() {   
        // Kreiranje okvira   
        Frame f = new Frame();  
        
        // Kreiarnje final oznake (Label)
        final Label label = new Label();   
  
        // Podešavanje poravnanja i veličine oznake (Label)           
        label.setAlignment(Label.CENTER);    
        label.setSize(500, 100);    
  
        // Kreiranje dugmeta  
        Button b = new Button("Prikaži");  
  
        // Podešavanje lokacije dugmeta   
        b.setBounds(200, 150, 80, 30);   
  
        // Kreiranje 2 objekta liste od 4 reda
        // dodavanje stavki na listu koristeći add()
        // postavljanje lokacije komponenti liste 
        final List l1 = new List(4, false);    
        l1.setBounds(100, 100, 70, 70);    
        l1.add("C");    
        l1.add("C++");    
        l1.add("Java");    
        l1.add("PHP");    
  
  
        final List l2=new List(4, true);    
        l2.setBounds(100, 200, 70, 70);    
        l2.add("Turbo C++");    
        l2.add("Spring");    
        l2.add("Hibernate");    
        l2.add("CodeIgniter");   
  
        // Dodavanje liste, oznake i dugmeta u okvir  
        f.add(l1);  
        f.add(l2);  
        f.add(label);  
        f.add(b);    
  
        // Podešavanje veličine, rasporeda i vidljivosti okvira 
        f.setSize(450,450);    
        f.setLayout(null);    
        f.setVisible(true);    
  
        // Generisanje događaja na dugmetu  
        b.addActionListener(new ActionListener() {    
         public void actionPerformed(ActionEvent e) {         
          String data = "Odabrani programski jezik: "+l1.getItem(l1.getSelectedIndex());    
          data += ", Odabrani Framework:";    
          for(String frame:l2.getSelectedItems()) {    
                   data += frame + " ";    
          }    
          label.setText(data);    
          }    
         });            
}    
  
    // Metoda main
    public static void main(String args[])    
    {    
       new Main();    
    }    
}

Prikaz koda iz gornjeg primjera izgledaće ovako: