|
Moving Ball
import java.awt.*;
public class MovingBall extends Frame
{
int ki;
int mouseX,mouseY;
int shape;
/******************************************/
/***** shape = 1 circle
*******/
/***** shape = 2 square
*******/
/***** shape = 3 ellipse
*******/
/***** shape = 4 rectangle *******/
/***************************************/
public MovingBall()
{
ki = mouseX = mouseY = 0;
shape = 0;
setBackground(Color.gray);
setTitle ("Moving the Figures using Arrow keys,
F1-Circle, F2-Square,F3Ellipse,F4-Rectangle");
}
public boolean handleEvent(Event e)
{
if (e.id == Event..WINDOW_DESTROY)
System.exit(0);
return(super.handleEvent(e));
}
public void paint(Graphics g)
{
if (ki == Event.F1)
{
g.drawOvaltmouseX,mouseY,10,10);
shape = 1;
}
if (ki == Event.F2)
{
g.drawRect(mouseX,mouseY,10,10);
shape = 2;
}
if (ki == Event.F3)
{
g.drawOval(mouseX,mouseY,10,20);
shape = 3;
}
if (ki == Event.F4)
{
g.drawRect(mouseX,mouseY,10,20);
shape = 4;
}
if (ki == Event.RIGHT)
{
if (mouseX <= 623)
mouseX += 15;
if (shape == 1)
g.drawOval(mouseX,mouseY,10,10);
if (shape == 2)
g.drawRect(mouseX,mouseY,10,10);
if (shape == 3)
g.drawOval(mouseX,mouseY,10,20);
if (shape == 4)
g.drawRect(mouseX,mouseY,10,20);
}
if (ki == Event.LEFT)
{
if (mouseX >= 3)
mouseX -= 15;
if (shape == 1)
g.drawOval(mouseX,mouseY,10,10);
if (shape == 2)
g.drawRect(mouseX,mouseY,10,10);
if (shape == 3)
g.drawOval(mouseX,mouseY,10,20);
if (shape == 4)
g.drawRect(mouseX,mouseY,10,20);
}
if (ki == Event.UP)
{
if (mouseY >= 7)
mouseY -= 15;
if (shape == 1)
g.drawOval(mouseX,mouseY,10,10);
if (shape == 2)
g.drawRect(mouseX,mouseY,10,10);
if (shape == 3)
g.drawOval(mouseX,mouseY,10,20);
if (shape == 4)
g.drawRect(mouseX,mouseY,10,20);
}
if (ki == Event.DOWN)
{
if (mouseY <= 410)
mouseY += 15;
if (shape == 1)
g.drawOval(mouseX,mouseY,10,10);
if (shape == 2)
g.drawRect(mouseX,mouseY,10,10);
if (shape == 3)
g.drawOval(mouseX,mouseY,10,20);
if (shape == 4)
g.drawRect(mouseX,mouseY,10,20);
}
if (ki == Event.HOME)
{
if (mouseX >= 3)
mouseX = 3;
if (shape == 1)
g.drawOval(mouseX,mouseY,10,10);
if (shape == 2)
g.drawRect(mouseX,mouseY,10,10);
if (shape == 3)
g.drawOval(mouseX,mouseY,10,20);
if (shape == 4)
g.drawRect(mouseX,mouseY,10,20);
}
if (ki == Event.END)
{
if (mouseX <= 623)
mouseX = 623;
if (shape == 1)
g.drawOval(mouseX,mouseY,10,10);
if (shape == 2)
g.drawRect(mouseX,mouseY,10,10);
if (shape == 3)
g.drawOval(mouseX,mouseY,10,20);
if (shape == 9)
g.drawRect(mouseX,mouseY,10,20);
}
public boolean mouseDown(Event e, int x,int y)
{
mouseX = x;
mouseY = y;
repaint();
return true;
}
public boolean keyDown(Event e, int key)
{
ki=key;
repaint();
return true;
}
public static void main(String arg[])
{
MovingBall b;
b = new MovingBall();
b.resize(600,600);
b.show();
}
}
Output
:
This code used to move different shapes according to the arrow
key pressed.
|