package com.spconger.EventExamples; import acm.graphics.*; import acm.program.*; import java.awt.Point; import java.awt.event.KeyEvent; import java.awt.event.MouseEvent; public class Program extends GraphicsProgram{ /** * This program moves a turtle around using * two different events: KeyEvent and MouseEvent * July, 3 2013 */ //declare our turtle private GTurtle bob; //set constants for form width private final int FORMWIDTH=400; private final int FORMHEIGHT=600; public void run(){ //set form size setSize(FORMWIDTH,FORMHEIGHT); //place the turtle in the center of the screen bob = new GTurtle(FORMWIDTH/2, FORMHEIGHT/2); //add the turtle to the screen add(bob); //wait for a mouse click to start waitForClick(); //add the key listener addKeyListeners(); //add the mouse listener addMouseListeners(); } public void keyPressed(KeyEvent e){ //this method handles the key event //we use a switch to determine //which keys to react to //for us just the arrow keys switch(e.getKeyCode()){ case KeyEvent.VK_RIGHT: bob.setDirection(0); break; case KeyEvent.VK_LEFT: bob.setDirection(180); break; case KeyEvent.VK_UP: bob.setDirection(90); break; case KeyEvent.VK_DOWN: bob.setDirection(-90); break; default: return; } //move the turtle bob.forward(10); } public void mouseMoved(MouseEvent e){ //get the mouse position Point movePos=e.getPoint(); //get the x and y of the current mouse position int x = movePos.x; int y = movePos.y; //use them to set bob.setLocation(x,y); } }
Wednesday, July 3, 2013
Events Examples
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment