//Ekraanil liikuvale ringile saab anda käsklusi: kiiremini, aeglasemalt, vasakule, //paremale. Viimased muudavad suunda 15 kraadi võrra vastavale poole. import java.applet.Applet; import java.awt.*; import java.awt.event.*; public class LiikuvRing2 extends Applet implements ActionListener{ Button nupp1=new Button("kiiremini"); Button nupp2=new Button("aeglasemalt"); Button nupp3=new Button("paremale"); Button nupp4=new Button("vasakule"); final int keskx=250; final int kesky=400; final int r=10; double kiirus=2; double kraad=90; TextField tf1=new TextField(10); public LiikuvRing2(){ add(tf1); tf1.addActionListener(this); add(nupp1); nupp1.addActionListener(this); add(nupp2); nupp2.addActionListener(this); add(nupp3); nupp3.addActionListener(this); add(nupp4); nupp4.addActionListener(this); } public void actionPerformed(ActionEvent syndmus){ // Math.toRadians(Double.parseDouble(tf1.getText())); // if(syndmus.getSource()==nupp1){ kiirus=kiirus+2; } if(syndmus.getSource()==nupp2){ kiirus=kiirus-2; } if(syndmus.getSource()==nupp3){ kraad=kraad-15; } if(syndmus.getSource()==nupp4){ kraad=kraad+15; } Graphics g=getGraphics(); double nurk=Math.toRadians(kraad); for(double k=0; k<340; k=k+kiirus){ int x=(int)(k*Math.cos(nurk)); int y=(int)(k*Math.sin(nurk)); g.setColor(Color.black); g.drawOval(keskx+x-r, kesky-y-r, 2*r, 2*r); try{Thread.sleep(50);}catch(Exception e){} g.setColor(Color.white); g.drawOval(keskx+x-r, kesky-y-r, 2*r, 2*r); } } public static void main(String[] argumendid){ Frame f=new Frame(); f.add(new LiikuvRing2()); f.setSize(500, 500); f.setVisible(true); } }