Konrad-Adenauer-Gymnasium Langenfeld

Informatik Grundkurs Einführungsphase

hhCanvas.java

Hier als Referenzlösung die Klasse hhCanvas:

import java.awt.*;
public class hhCanvas extends Canvas
{
private int iBreite;
private int iHöhe;
private Image imBild;
private Graphics grGrafik;

//Konstruktor
public hhCanvas(int iBreite, int iHöhe)
{
this.iBreite=iBreite;
this.iHöhe=iHöhe;
this.setSize(iBreite,iHöhe);
}
public void init()
{
imBild=createImage(iBreite,iHöhe);
grGrafik=imBild.getGraphics();
}
public void paint(Graphics g)
{
g.drawImage(imBild,0,0,this);
}
public void update(Graphics g)
{
paint(g);
}
public void Zeichnen()
{
int iHausbreite;
int iHaushöhe;
int iDachhöhe;
int iHalbesHaus;
iHausbreite=50;
iHaushöhe=3*(int)(iHausbreite/2);
iDachhöhe=(int)(iHausbreite/4);
iHalbesHaus=(int)(iHausbreite/2);
grGrafik.drawRect(100,100,iHausbreite,iHaushöhe);
grGrafik.drawLine(100,100+iHaushöhe,100+iHausbreite,100);
grGrafik.drawLine(100,100,100+iHausbreite,100+iHaushöhe);
grGrafik.drawLine(100,100,100+iHalbesHaus,100-iDachhöhe);
grGrafik.drawLine(100+iHalbesHaus,100-iDachhöhe,100+iHausbreite,100);
repaint();
}
public void Löschen()
{
grGrafik.setColor(Color.white);
grGrafik.fillRect(0,0,iBreite,iHöhe);
grGrafik.setColor(Color.black);
repaint();
}
}


© Ralph-Erich Hildebrandt, 06. Januar 2004