Sei sulla pagina 1di 7
 
Programazione grafica: l’API Graphics
Con il termine programmazione grafica in Java si intende la possibilità di
disegnare forme (rettangoli, ovali, ecc.),
disegnare testo,
impostare i colori per il disegno,
impostare il tipo di font per il testo,all'interno di un contenitore (tipicamente un JPanel).Le classi usate a tale scopo sono:
Graphics
,
Color
 e
Font
; tutte appartengono al package java.awt.Per disegnare in un panello è necessario:1.derivare una classe da JPanel;
2.
ridefinire il metodo
paintComponent
 di tale classe.Il metodo paintComponent è definito nella classe Jcomponent con la seguente firma:
protected void 
paintComponent
(Graphics g)In Java tutti i disegni sono essere gestiti dal sistema attraverso un oggetto Graphics, che il programmatore non manipola direttamente.Il metodo paintComponent viene chiamato automaticamente quando una parte di un componente deve essere ridisegnata; il programmatore non deve interferire con questo processo automatico.Il metodo paintComponent, quando ridefinito nella sottoclasse, deve sempre contenere come prima istruzione la chiamata al metodo paintComponent della superclasse. Per esempio:public void paintComponent(Graphics g) {super.paintComponent(g); //segue il codice per il disegno}Il chiamante può ordinare di ridisegnare il pannello, o più in generale un componente, utilizzando il metodo repaint della classe Component di java.awt:
public void 
repaint
()
 Autore: Cinzia BocchiUltimo aggiornamento: 10/10/2011
1
ObjectFontColor Graphics
 
Alcuni metodi della classe Graphics
public void
drawLine
(int x_inizio, int y_inizio, int x_fine, int y_fine)Disegna una linea che va dal punto (x_inizio,y_inizio) al punto (x_fine,y_fine), utilizzando il colore correntemente impostato.
public void
drawRect
(int x, int y, int larghezza, int altezza) Disegna un rettangolo di larghezza e altezza specificate e il cui vertice superiore sinistro coincide con il punto di coordinate (x,y), utilizzando il colore correntemente impostato.
public void
drawRoundRect
(int x, int y, int larghezza, int altezza, int larghArea, int altArea) Disegna un rettangolo di larghezza e altezza specificate e il cui vertice superiore sinistro coincide con il punto di coordinate (x,y), utilizzando il colore correntemente impostato. Il rettangolo ha gli angoli arrotondati. I parametri larghArea e altArea definiscono larghezza e altezza dell'area con gli angoli arrotondati: più è grande quest'area, tanto più gli spigoli sono arrotondati.
public void
drawOval
(int x, int y, int larghezza, int altezza)Disegna l'ovale inscritto nel rettangolo di larghezza e altezza specificate e il cui vertice superiore sinistro coincide con il punto di coordinate (x,y), utilizzando il colore correntemente impostato.
public void
drawString
(String str, int x, int y)Disegna la stringa str a partire dal punto di coordinate (x,y), utilizzando il colore correntemente impostato.
public void
fillRect
(int x, int y, int larghezza, int altezza)Disegna un rettangolo di larghezza e altezza specificate e il cui vertice superiore sinistro coincide con il punto di coordinate (x,y). Il rettangolo viene riempito con il colore correntemente impostato.
public void
fillRoundRect
(int x, int y, int larghezza, int altezza, int larghArea, int altArea) Disegna un rettangolo di larghezza e altezza specificate e il cui vertice superiore sinistro coincide con il punto di coordinate (x,y). Il rettangolo viene riempito con il colore correntemente impostato e ha gli angoli arrotondati. I parametri larghArea e altArea definiscono larghezza e altezza dell'area con gli angoli arrotondati: più è grande quest'area, tanto più gli spigoli sono arrotondati.
public void
fillOval
(int x, int y, int larghezza, int altezza)Disegna l'ovale inscritto nel rettangolo di larghezza e altezza specificate e il cui vertice superiore sinistro coincide con il punto di coordinate (x,y). L'ovale viene riempito con il colore correntemente impostato.
 Autore: Cinzia BocchiUltimo aggiornamento: 10/10/2011
2
 
public Color
getColor
()Restituisce il colore impostato per le operazioni di disegno.
public Font
getFont
()Restituisce il tipo di font impostato per le operazioni di disegno.
public void
setColor
(Color colore)Imposta il colore specificato per tutte le operazioni di disegno successive.
public void
setFont
(Font font)Imposta il tipo di font specificato per tutte le operazioni di disegno successive.
Esempio: Disegnare un rettangolo
import
 java.awt.BorderLayout;
import
 java.awt.Color;
import
 java.awt.Container;
import
 java.awt.Graphics;
import
 javax.swing.JFrame;
import
 javax.swing.JPanel;@SuppressWarnings("serial")
 public
 
class
 PaintFrame
extends
 JFrame {
 public
 
static
 
final
 
int
 
LARGHEZZA 
= 300;
 public
 
static
 
final
 
int
 
ALTEZZA 
= 300;
 public
 PaintFrame(){
super
("Rettangolo");setSize(
LARGHEZZA 
,
ALTEZZA 
);setDefaultCloseOperation(JFrame.
EXIT_ON_CLOSE 
);Container contentPane = getContentPane();PaintArea panel=
new
 PaintArea();panel.setBackground(Color.
white
);contentPane.add(panel,BorderLayout.
CENTER
);}
class
 PaintArea
extends
 JPanel{
 public
 
static
 
final
 
int
 
= 10;
 public
 
static
 
final
 
int
 
= 10;
 public
 
static
 
final
 
int
 
= 100;
 public
 
static
 
final
 
int
 
= 150;
 public
 
void 
 paintComponent(Graphics g){
super
.paintComponent(g);g.drawRect(
,
,
,
);}}
 Autore: Cinzia BocchiUltimo aggiornamento: 10/10/2011
3

Premia la tua curiosità

Tutto ciò che desideri leggere.
Sempre. Ovunque. Su qualsiasi dispositivo.
Nessun impegno. Annulla in qualsiasi momento.
576648e32a3d8b82ca71961b7a986505