Pages: [1]   Go Down
Print
Author Topic: Lezione venerdì 21 novembre  (Read 1981 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
James
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 209



« on: 21-11-2008, 21:45:39 »

Quali argomenti sono stati trattati a lezione? Il prof. ha assegnato esercizi particolari da svolgere a casa?
Logged

Whatever people say i am, that's what i'm not
Root
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 474



« Reply #1 on: 21-11-2008, 23:20:39 »

Abbiamo visto tutti i layout che esistono sulla faccia della terra(BorderLayout, BoxedLayout, FlowLayout, etc...)
Poi si è parlato di JPanel etc....

Appena accendo il portatile posto un pò di "codice appunti"
Logged

Passa a jabber!
http://jabber.org (il servizio)
http://pidgin.im (il client)

(c'era una volta) www.mytwocent.it
Condividi le tue conoscenze!

linux registered user #449678
James
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 209



« Reply #2 on: 21-11-2008, 23:26:51 »

Thank's a lot
Logged

Whatever people say i am, that's what i'm not
Root
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 474



« Reply #3 on: 21-11-2008, 23:45:50 »

a vouz.... sono appunti e quindi molto incasinati... ma si capisce!
Code:
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.BoxLayout;
import javax.swing.JLabel;
import java.awt.Color;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.GridLayout;
public class Lab_211108
{
    public static void main(String [] args)
    {

/*
  Opacità <--> Trasparenza
  è possibile modificare l'opacità delle JComponent.
  Ad Esempio le JLabel sono trasparenti per default.
  Jpanel per default è opaco.

  setOpaque(boolean);

  La classe JPanel, serve come contenitori o come "tela da disegno".
  Le regole di disposizione degli oggetti all'interno dei contenitori si chiamano Layout,
  sono oggetti che non hanno controparte visuale...
  In Java ogni contenitore ha un Layout, di default BorderLayout (per JPanel è FlowLayout)
  Un layout si aggiunge ad un contenitore mediante
  c.setLayout(new BorderLayout(parametri));
  aggiungere una componente
  c.add(P,BorderLayout.<POS>) ove POS=CENTER,SOUTH,NORD,EAST,WEST
*/

JFrame myFrame = new JFrame();
myFrame.setTitle("BorderLayout");
myFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
myFrame.setBounds(200,200,500,500);
JPanel P = new JPanel();
P.setLayout(new BorderLayout());
JLabel label = new JLabel("Lupacchiotto");
JLabel label1 = new JLabel("Lupacchiotto1");
JLabel label2 = new JLabel("Lupacchiotto2");
JLabel label3 = new JLabel("Lupacchiotto3");
JLabel label4 = new JLabel("Lupacchiotto4");
JLabel label5 = new JLabel("Lupacchiotto5");
label.setOpaque(true);
label1.setOpaque(true);
label2.setOpaque(true);
label3.setOpaque(true);
label4.setOpaque(true);
label5.setOpaque(true);
label.setBackground(Color.CYAN);
label1.setBackground(Color.RED);
label2.setBackground(Color.GRAY);
label3.setBackground(Color.WHITE);
label4.setBackground(Color.YELLOW);
P.add(label, BorderLayout.NORTH);
P.add(label1, BorderLayout.SOUTH);
P.add(label2, BorderLayout.WEST);
P.add(label3, BorderLayout.EAST);
P.add(label4, BorderLayout.CENTER);
myFrame.add(P);
myFrame.setVisible(true);
//BOX LAYOUT mette tutto solo in colonna Y_AXIS o riga X_AXIS
JFrame newFrame = new JFrame();
JPanel trui = new JPanel();
trui.setLayout(new BoxLayout(trui, BoxLayout.Y_AXIS));
trui.add(new JLabel("Salve"));
trui.add(new JLabel("Sono"));
trui.add(new JLabel("BOXLAYOUT"));
newFrame.add(trui);
newFrame.pack();
newFrame.setTitle("BOXLAYOUT");
newFrame.setVisible(true);

//FLOWLAYOUT mette tutto in riga fino ad arrivare al bordo destro, dopodichè va a capo
JFrame ancoraUno = new JFrame();
JPanel myPanel1 = new JPanel();
myPanel1.setBounds(0,0,500,200);
myPanel1.setLayout(new FlowLayout(FlowLayout.CENTER, 5, 5));
for(int i = 0; i<10; i++)
    myPanel1.add(new JLabel("Label "+i));
ancoraUno.add(myPanel1);
ancoraUno.pack();
ancoraUno.setTitle("FLOWLAYOUT");
ancoraUno.setVisible(true);

//GRIDLAYOUT mette tutto in griglia
JFrame evvai = new JFrame("GridLayout");
evvai.setLayout(new GridLayout(3,3,3,3));
evvai.add(new JLabel("ciao"));
evvai.add(new JLabel("ciao1"));
evvai.add(new JLabel("ciao2"));
evvai.add(new JLabel("ciao3"));
evvai.add(new JLabel("ciao4"));
evvai.pack();
evvai.setVisible(true);

//si potrebbe anche utilizzare un non layout e posizionare mediante setBounds tutte le componenti
//da utilizzare se il contenitore non è resizable

//GRAPHICS
/*
  Questa è una classe astratta, collezione di regole e vari utili a disegnare sulla componente.
  Spessore penna, stile tratto e modalità di overlay delle linee(sovrapposizione).
  Ad ogni pannello è associato un Graphics

  Graphics g = P.getGraphics();
*/
    }
}

Logged

Passa a jabber!
http://jabber.org (il servizio)
http://pidgin.im (il client)

(c'era una volta) www.mytwocent.it
Condividi le tue conoscenze!

linux registered user #449678
James
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 209



« Reply #4 on: 22-11-2008, 11:42:26 »

Meeeeeeee sei un pazzo! Molte grazie yoh  pray
Logged

Whatever people say i am, that's what i'm not
Pages: [1]   Go Up
Print
Jump to: