| HOME | FORUM | INDICE |

download ScrollPaneEsempio.java

/*
    L'esempio mostra l'utilizzo del contenitore ScrollPane.

    Autore: Agosto 2009, Giovanni Iacobelli - http://www.iacosoft.com

*/


import java.awt.*;
import java.awt.event.*;

class ScrollPaneEsempio extends Frame implements WindowListener
{
    
    ScrollPane cont;

    //costruttore
    public ScrollPaneEsempio()
    {
        //richiama il costruttore della classe base per impostare il titolo della finestra
        super("Esempio d'utilizzo di ScrollPane");

        setLocation(0,0); //imposta la posizione della finestra

        setSize(300,400); //imposta la dimensione della finestra
        
        //aggiunge il gestore per l'evento di chiusura della finestra
        addWindowListener(this);

        
        //le scroll bars verranno visualizzate solo se necessarie
        cont= new ScrollPane(ScrollPane.SCROLLBARS_AS_NEEDED);

        /*
            lo scollpane puo' contenere un unico controllo e per
            tal motivo inseriamo un pannello con al suo interno 6 etichette.
        */

        Panel p= new Panel(new GridLayout(6,1)); //il layout verrā posizionato su una griglia di 6 righe e 1 colonna

        /*
            imposta le dimensioni del pannello.
            Tuttavia la larghezza minima č quella della finestra in quanto
            per default il managerlayout del frame č del tipo BorderLayout
        */

        p.setPreferredSize(new Dimension(100,300));


        //aggiunge le etichette al pannello
        Label lbl_1= new Label("Etichetta 1", Label.CENTER);
        lbl_1.setBackground(Color.green);
        p.add(lbl_1);
                
        Label lbl_2= new Label("Etichetta 2", Label.CENTER);
        lbl_2.setBackground(Color.yellow);
        p.add(lbl_2);
        
        Label lbl_3= new Label("Etichetta 3", Label.CENTER);
        lbl_3.setBackground(Color.green);
        p.add(lbl_3);
                
        Label lbl_4= new Label("Etichetta 4", Label.CENTER);
        lbl_4.setBackground(Color.yellow);
        p.add(lbl_4);
                
        Label lbl_5= new Label("Etichetta 5", Label.CENTER);
        lbl_5.setBackground(Color.green);
        p.add(lbl_5);
                
        Label lbl_6= new Label("Etichetta 6", Label.CENTER);
        lbl_6.setBackground(Color.yellow);
        p.add(lbl_6);
        
        //aggiunge il pannello allo scrollpane
        cont.add(p);

        add(cont, BorderLayout.NORTH); //inserisce il pannello nella zona alta della finestra

        //rende visibile la finestra
        setVisible(true);
        
    }

    //punto d'ingresso dell'applicazione
    public static void main(String[] args)
    {
        new ScrollPaneEsempio();
    }

    //metodi dell'interfaccia WindowListener
    public void windowClosing(WindowEvent e)
    {
        //termina l'applicazione
        System.exit(0);
    }
    
    public void windowDeactivated(WindowEvent e)
    {
    }
    
    public void windowDeiconified(WindowEvent e)
    {
    }

    public void windowActivated(WindowEvent e)
    {
    }

    public void windowIconified(WindowEvent e)
    {
    }
    
    public void windowClosed(WindowEvent e)
    {
    }
    
    public void windowOpened(WindowEvent e)
    {
    }
    //fine metodi dell'interfaccia WindowListener
}