hallo,
muss in der schule so ne animation machen. ich möchte das die animation im kreis geht oder auch von oben links nach unten rechts. aber ich krieg nur seite und zurück hin. ich schick einfach mal mein script mit.
Wichtig: ich muss die sachen benutzen die ich kenne, deswegen bringt es nichts mein ganzes script zu ändern:
Erste Klasse
zweite klasse
dankeschön
muss in der schule so ne animation machen. ich möchte das die animation im kreis geht oder auch von oben links nach unten rechts. aber ich krieg nur seite und zurück hin. ich schick einfach mal mein script mit.
Wichtig: ich muss die sachen benutzen die ich kenne, deswegen bringt es nichts mein ganzes script zu ändern:
Erste Klasse
Java:
int xPos, yPos;
private BufferedImage bi;
private Graphics offg;
public Man(String imagePath, int x, int y)
{
image = loadImage(imagePath);
xPos = x;
yPos = y;
setBackground(Color.black);
}
public void update(Graphics g)
{
paint(g);
}
public void paint(Graphics g)
{
Dimension d = getSize();
checkOffScreenBuffer();
offg.setColor(getBackground());
offg.fillRect(0, 0, d.width, d.height);
offg.drawImage(image, xPos, yPos, null);
g.drawImage(bi, 0, 0, null);
}
public void checkOffScreenBuffer()
{
Dimension d = getSize();
if (bi == null || bi.getWidth(null) != d.width || bi.getHeight(null) != d.height)
{
bi = new BufferedImage(d.width, d.height, BufferedImage.TYPE_INT_RGB);
offg = bi.createGraphics();
}
}
public void setBounds(int x, int y)
{
xPos = x;
yPos = y;
}
public Image loadImage(String imagePath)
{
Image image = Toolkit.getDefaultToolkit().getImage(imagePath);
return image;
}
}
zweite klasse
Java:
import java.awt.*;
import java.awt.event.*;
public class Fenster extends Frame
{
Man man = new Man("jman.jpg", 0, 0);
private Label lblUeberschrift = new Label ("Kristine Schellenberg + Zekieh Alptekin");
private Panel pnlNorth = new Panel ();
public Fenster()
{
this.add(man);
this.pnlNorth.setBackground(Color.BLACK);
this.setForeground(Color.RED);
this.lblUeberschrift.setFont(new Font("Times New Roman", Font.BOLD, 22));
this.pnlNorth.add(this.lblUeberschrift);
this.add(this.pnlNorth,BorderLayout.NORTH);
this.setTitle("Hensel &Gretel");
this.setSize(1000, 600);
this.show();
this.addWindowListener(new FensterMitXSchliessen());
for (;;)
{
for (int x = 60; x <= 600; x++)
{
man.setBounds(x, 100);
delay(10);
man.repaint();
}
for (int y = 500; y <= 60; y++)
{
man.setBounds(y, 100);
delay(10);
man.repaint();
}
}
}
public void delay(int ms)
{
try
{
Thread.currentThread().sleep(ms);
}
catch (InterruptedException e) {}
}
public static void main(String[] args)
{
Fenster f = new Fenster();
}
}
dankeschön