|
Raggio=45, Velocità=10 px/s
Codice Html<APPLET CODE="MuoviCerchio.class" WIDTH="300" HEIGHT="100"> <PARAM name=Raggio value="45"> <PARAM name=Velocita value="100"> </APPLET> Raggio=30, Velocità=100 px/s
Codice Html<APPLET CODE="MuoviCerchio.class" WIDTH="300" HEIGHT="100"> <PARAM name=Raggio value="30"> <PARAM name=Velocita value="10"> </APPLET> Codice Javaimport java.applet.*; import java.awt.*; import java.awt.event.*; import javax.swing.Timer; public class MuoviCerchio extends Applet implements ActionListener { final int xMin=0; int xMax, // limiti sinistro e destro xC, // coordinate dell'angolo in alto yC; // del cerchio int raggio, diametro; int ms; // ogni quanti millisecondi si muove Timer t; // per regolare l'animazione boolean versoDestra; // da che parte va public void init() { try { raggio=Integer.parseInt(getParameter("Raggio")); } catch(Exception e) { raggio=25; } try { ms=Integer.parseInt(getParameter("Velocita")); } catch(Exception e) { ms=10; } diametro=2*raggio; xC = 0; // parte da destra versoDestra = true; // verso destra t=new Timer(ms, this); t.start(); setBackground(Color.black); setForeground(Color.gray); } public void paint(Graphics g) { g.drawOval(xC, yC, diametro, diametro); } public void actionPerformed(ActionEvent e) { Dimension d = getSize(); xMax=d.width-diametro; yC =d.height/2-raggio; if(versoDestra) { if (xC > xMax) { versoDestra=false; xC=xMax; } else xC++; } else { if (xC <= xMin) { versoDestra=true; xC=xMin; } else xC--; } repaint(); } }//class |
|