MoveExample.java===================================================================================
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MoveExample extends JApplet
implements Runnable, MouseMotionListener
{
Thread clock;
Image off;
Graphics offG;
Image bgImage;
Image circle;
int x, y;
int mouseX, mouseY;
public void init()
{
off = createImage(500, 500);
offG = off.getGraphics();
MediaTracker myTracker = new MediaTracker(this);
bgImage = Toolkit.getDefaultToolkit().getImage(getClass().getResource("map.gif"));
myTracker.addImage(bgImage, 0);
circle = Toolkit.getDefaultToolkit().getImage(getClass().getResource("circle.gif"));
myTracker.addImage(circle, 0);
try
{
myTracker.waitForAll();
}
catch(InterruptedException ie){}
while((myTracker.statusAll(true) & MediaTracker.COMPLETE)==0){}
x = 100; y = 100;
mouseX = 100; mouseY = 100;
addMouseMotionListener(this);
}
public void start()
{
if(clock==null)
{
clock = new Thread(this);
clock.start();
}
}
public void paint(Graphics g)
{
g.drawImage(off, 0, 0, this);
}
public void run()
{
while(true)
{
try
{
clock.sleep(50);
}
catch(InterruptedException ie){}
if(x<mouseX)
{
x++;
}
else if(x>mouseX){
x--;
}
if(y<mouseY)
{
y++;
}
else if(y>mouseY){
y--;
}
offG.drawImage(bgImage, 0, 0, this);
offG.drawImage(circle, x, y, this);
repaint();
}
}
public void stop()
{
if(clock!=null && clock.isAlive())
{
clock = null;
}
}
public void mouseMoved(MouseEvent e)
{
mouseX = e.getX();
mouseY = e.getY();
repaint();
}
public void mouseDragged(MouseEvent e){}
}
=====================================================================================================
'OM' 카테고리의 다른 글
Flash Player 9의 보안 변경 사항 (0) | 2008.07.23 |
---|---|
Fire Fox Flash Tracer 설정 (5) | 2008.07.18 |
외부에서 load된 swf 메소드 호출하기 (0) | 2008.06.25 |
에어 배포 (badge.swf) (0) | 2008.06.03 |
에어 디스크립터 파일 (0) | 2008.06.03 |
외부에서 load된 swf가 MouseEvent를 가릴때 (4) | 2008.05.18 |
캐릭터 이동 (2) | 2008.05.11 |
Yahoo WebAPI를 이용한 날씨 위젯 2 (0) | 2008.05.11 |
Yahoo WebAPI를 이용한 날씨 위젯 1 (1) | 2008.05.10 |