Java - AWT Scrollbar


Objekt klase Scrollbar se koristi za dodavanje horizontalne i vertikalne trake za pomicanje. Scrollbar je GUI komponenta nam omogućava da vidimo nevidljivi broj redova i kolona. Može se dodati u kontejner najvišeg nivoa kao što je Frame ili komponentu kao što je Panel. Klasa Scrollbar proširuje klasu Component. Deklaracija klase AWT Scrollbar se može napisati kao:

public class Scrollbar extends Component implements Adjustable, Accessible  


Polja klase Scrollbar

Polja klase java.awt.Image su sljedeća:

  • static int HORIZONTAL - To je konstanta koja označava horizontalnu traku za pomicanje.
  • static int VERTICAL - To je konstanta koja označava vertikalnu traku za pomicanje.


Konstruktori klasa trake za pomicanje (Scrollbar)

Konstruktor Opis
Scrollbar() Konstruira novu vertikalnu traku za pomicanje.
Scrollbar(int orientation) Konstruiše novu traku za pomicanje sa navedenom orijentacijom.
Scrollbar(int orientation, int value, int visible, int minimum, int maximum) Konstruiše novu traku za pomicanje sa navedenom orijentacijom, početnom vrijednošću, vidljivom količinom i minimalnim i maksimalnim vrijednostima.

Gdje su parametri:

  • orientation: određuje da li će traka za pomicanje biti horizontalna ili vertikalna.
  • value: određuje početnu poziciju dugmeta trake za pomicanje na njegovoj stazi.
  • minimum: određuje minimalnu širinu staze na kojoj se kreće traka za pomicanje.
  • maximum: određuje maksimalnu širinu staze na kojoj se kreće traka za pomicanje.


Metoda nasljeđivanja Scrollbar-a

Metode klase Scrollbar su nasljeđene od sljedećih klasa:

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


Klase metode Scrollbar

Konstruktor Opis
void addAdjustmentListener (AdjustmentListener l) Dodaje zadani slušalac prilagođavanja da prima instance AdjustmentEventa sa trake za pomicanje.
void addNotify() Kreira ravnopravnu traku za pomicanje.
int getBlockIncrement() Dobija blok inkrement trake za pomicanje.
int getMaximum() Dobija maksimalnu vrijednost trake za pomicanje.
int getMinimum() Dobija minimalnu vrijednost trake za pomicanje.
int getOrientation() Vraća orijentaciju trake za pomicanje.
int getUnitIncrement() Dohvata jedinični prirast trake za pomicanje.
int getValue() Dohvata trenutnu vrijednost trake za pomicanje.
int getVisibleAmount() Dohvata vidljivu količinu trake za pomicanje.
boolean getValueIsAdjusting() Vraća true ako je vrijednost u procesu promjene, gdje korisnik poduzima rezultate radnje.
protected String paramString() Vraća string koji predstavlja stanje trake za pomicanje.
protected void processAdjustmentEvent (AdjustmentEvent e) Obrađuje događaj prilagođavanja koji se javlja na traci za pomicanje tako što ih šalje na bilo koji registrovani AdjustmentListener objekt.
protected void processEvent(AWTEvent e) Obrađuje događaje na traci za pomicanje.
void removeAdjustmentListener (AdjustmentListener l) Uklanja dato podešavanje slušaoca. Zbog toga više ne prima instance AdjustmentEvent sa trake za pomicanje.
void setBlockIncrement(int v) Postavlja inkrement bloka iz trake za pomicanje.
void setMaximum (int newMaximum) Postavlja maksimalnu vrijednost trake za pomicanje.
void setMinimum (int newMinimum) Postavlja minimalnu vrijednost trake za pomicanje.
void setOrientation (int orientation) Postavlja orijentaciju trake za pomicanje.
void setUnitIncrement(int v) Postavlja jedinični prirast za traku za pomicanje.
void setValue (int newValue) Postavlja vrijednost trake za pomicanje sa datom vrijednošću argumenta.
void setValueIsAdjusting (boolean b) Postavlja svojstvo valueIsAdjusting na traku za pomicanje.
void setValues (int value, int visible, int minimum, int maximum) Postavlja vrijednosti četiri svojstva za traku za pomicanje: vrijednost, vidljivi iznos, minimum i maksimum.
void setVisibleAmount (int newAmount) Postavlja vidljivu količinu trake za pomicanje.
AccessibleContext getAccessibleContext() Dobija pristupačan kontekst koji se odnosi na traku za pomicanje.
AdjustmentListener[] getAdjustmentListeners() Vraća niz svih slušalaca podešavanja registrovanih na traci za pomeranje.
T[] getListeners(Class listenerType) Vraća niz ako su svi objekti koji su trenutno registrovani kao FooListeners na traci za pomicanje.


Primjer Java AWT trake za pomicanje (Scrollbar)

U sljedećem primjeru, kreiramo traku za pomicanje koristeći Scrollbar() 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 Scrollbar-a");    
        // Kreiranje trake za pomicanje 
        Scrollbar s = new Scrollbar();    

        // Postavljanje pozicije trake za pomicanje (Scrollbar)  
        s.setBounds (100, 100, 50, 100);  

        // Dodavanje trake za pomicanje u okvir  
        f.add(s);    

        // 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 trake za pomicanje sa AdjustmentListener-om

U sljedećem primjeru kreiramo traku za pomicanje i dodajemo je u okvir. Ovdje koristimo addAdjustmentListener() metodu Scrollbar klase koja prima instance AdjustmentEventa i na kraju ga prikazujemo u obliku Label.

// Importovanje potrebnih paketa  
import java.awt.*;    
import java.awt.event.*;    
  
  
public class Main {   
  
    // Konstruktor klase   
    Main() {    
        // Kreiranje okvira s naslovom   
        Frame f = new Frame("Primjer Scrollbar-a");    
  
        // Kreiranje final objekta Label  
        final Label label = new Label();   
  
        // Postavljanje poravnanja i veličine objekta etikete           
        label.setAlignment(Label.CENTER);    
        label.setSize(400, 100);    
 
        // Kreiranje konačnog objekta klase Scrollbar  
        final Scrollbar s = new Scrollbar();    
  
        // Postavljanje pozicije trake za pomicanje 
        s.setBounds(100, 100, 50, 100);    
  
        // Dodavanje trake za pomicanje (Scrollbar) i oznake (Label) u okvir (Frame)
        f.add(s);  
        f.add(label);    
  
        // Postavljanje veličine, izgleda i vidljivosti okvira 
        f.setSize(400, 400);    
        f.setLayout(null);    
        f.setVisible(true);  
  
        // Dodavanje AdjustmentListener-a objektu trake za pomicanje  
            s.addAdjustmentListener(new AdjustmentListener() {    
                public void adjustmentValueChanged(AdjustmentEvent e) {    
                   label.setText("Vrijednost vertikalne trake za pomicanje je:"+ s.getValue());    
                }    
            });    
         }  
  
    // Metoda main    
    public static void main(String args[]){    
        new Main();    
    }    
}

Prikaz koda iz gornjeg primjera izgledaće ovako: