| HOME | FORUM | INDICE |

download NullLayoutEsempio.java

/*
    L'esempio mostra l'utilizzo di nessun ManagerLayout.

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

*/


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

class NullLayoutEsempio extends Frame
{
    //costruttore
    public NullLayoutEsempio(String titolo, int x, int y, int larg, int alt)
    {
        //richiama il costruttore della classe base (super classe) per impostare il titolo della finestra
        super(titolo);

        //imposta la posizione della finestra
        setLocation(x,y);

        //imposta la dimensione della finestra
        setSize(larg, alt);

        //aggiunge il gestore dell'evento di chiusura della finestra
        addWindowListener(new MyWindowAdapter(this));

        //crea le etichette
        Label lbl_1= new Label("Testo UNO", Label.CENTER);
        Label lbl_2= new Label("Testo DUE", Label.CENTER);
        Label lbl_3= new Label("Testo TRE", Label.CENTER);
        Label lbl_4= new Label("Testo QUATTRO", Label.CENTER);
        Label lbl_5= new Label("Testo CINQUE", Label.CENTER);
        
        //imposta il colore di sfondo di ciascuna etichetta
        lbl_1.setBackground(Color.red);
        lbl_2.setBackground(Color.green);
        lbl_3.setBackground(Color.yellow);
        lbl_4.setBackground(Color.pink);
        lbl_5.setBackground(Color.blue);

        //elimina il ManagerLayout di default (BorderLayout per il Frame)
        setLayout(null);

        //posiziona l'etichetta indicando le coordinate
        lbl_1.setBounds(new Rectangle(10,50,100,20)); //x, y, larghezza, altezza

        add(lbl_1);

        lbl_2.setBounds(new Rectangle(80,80,100,20));

        add(lbl_2);

        lbl_3.setBounds(new Rectangle(180,100,100,20));

        add(lbl_3);

        lbl_4.setBounds(new Rectangle(80,180,100,20));
        add(lbl_4);

        lbl_5.setBounds(new Rectangle(200,200,100,20));
        add(lbl_5);

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

    //punto d'ingresso della finestra
    public static void main(String[] args)
    {
        NullLayoutEsempio w= new NullLayoutEsempio("Esempio Layout Manager",0,0, 500,300);
    }

    //gestore per l'evento di chiusura della finestra
    public class MyWindowAdapter extends WindowAdapter
    {
        private Frame win;
        public MyWindowAdapter(Frame win)
        {
            this.win= win;
        }

        public void windowClosing(WindowEvent e)
        {
            //termina l'applicazione
            System.exit(0);
        }
    }
}