Hem E-böcker Specialeffekter och spelutveckling i Java Hur man kontrollerar

Specialeffekter och spelutveckling i Java(TM) - Hur man kontrollerar appletskärmen med paint() metoden (Graphics klassen och fillRect() metoden) 

av Anibal Wainstein

2.1.3 Hur man kontrollerar appletskärmen med paint() metoden (Graphics klassen och fillRect() metoden) 
 

Jag sa i avsnitt 2.0.2 att det var init() metoden som var det första som kördes i en Java applet. Metoden som körs direkt efter init() i en applet är paint() metoden: 
 

public void paint(Graphics g)
{
}
Med paint() metoden har du full kontroll över appletskärmen tack vare Graphics objektet som följer med och som pekar på skärmen. I klassen Graphics finns metoder för att rita ut linjer, cirklar, rektanglar, text, bilder m.m. Vad man alltid bör göra i en grafikapplet är att initiera skärmen men en viss bakgrundsfärg. Detta kan vi göra med metoden fillRect() som kommer att fylla en rektangel. Först måste vi dock specifiera en färg som appletens "färgpenna" kommer att arbeta med. 
Anta att vi vill ha en blå färg i vår applet och vi vill att appletstorleken skall vara 200x100 pixels: 
import java.applet.*;  
import java.awt.*;   
public class initierabakgrund extends Applet { 

public void init()
{
    //den här metoden exekveras före 
    //paint() metoden
}  
public void paint(Graphics g)  
{  
    Color bakgrundsfarg = Color.blue;  

    // setColor  i klassen Graphics  
    // sätter pennans färg, normalt är den svart  
    g.setColor(bakgrundsfarg);  

    // fillRect fyller en rektangulärt område med   
    // den valda färgen. Metoden kräver en  horisontell   
    //och vertikal position (x resp. y position)  
    g.fillRect( 0, 0, 200, 100);  
}   

Observera att all kommunikation med appletskärmen går genom Graphics objektet "g". Här ovan har vi först bestämt färgen på pennan som Graphics objektet använder för att rita på skärmen. Nästa steg är att rita en rektangel som täcker hela skärmen med färgen som vi har valt. Vi önskade oss en applet som skulle vara 200x100 pixels stor, därför behöver vi en rektangel som börjar i början av appletskärmen (0,0) och har dimensionerna 200x100 pixels. 

Notera att ökar man den vertikala positionen y så rör sig rektangeln nedåt. En ökning av den horisontella positionen x förflyttar rektangeln åt höger. 

Hur fillRect fungerar.

Gör nu en fil av kodtexten ovan samt en egen HTML fil där CODE="initierabakgrund.class" samt där WIDTH och HEIGHT är 200 resp. 100. 

Du kan också klicka här för att se på appleten. 
 

 

 

Nästa sida >>