import java.awt.*; import java.applet.*; import java.awt.event.*; public class joonis extends Applet implements AdjustmentListener{ public int proportsioon; //fraktali erinevused TextField indikaator=new TextField(); public joonis(){ Scrollbar riba=new Scrollbar(Scrollbar.VERTICAL, 1, 2, 1, 20); setLayout(new BorderLayout()); add(riba, BorderLayout.EAST); add(indikaator, BorderLayout.SOUTH); riba.addAdjustmentListener(this); } public int i=0; public void rekursioon(Graphics g, int vasak, int tipp, int kylg) { System.out.println(proportsioon); if (kylg > 2){ g.setColor(Color.red); rekursioon(g,vasak - kylg/4,tipp - kylg/4,kylg/2); //vasakule yles rekursioon(g,vasak - kylg/4,tipp + kylg - kylg/4,kylg/2); //vasakule yles rekursioon(g,vasak + kylg - kylg/4,tipp - kylg/4,kylg/2); // paremale yles rekursioon(g,vasak + kylg - kylg/4,tipp + kylg- kylg/4,kylg/2); //paremale alla g.fillRect(vasak*proportsioon,tipp*proportsioon,kylg*proportsioon,kylg*proportsioon); } } public void adjustmentValueChanged(AdjustmentEvent e){ proportsioon=e.getValue(); indikaator.setText(proportsioon+" "); Graphics g= this.getGraphics(); g.setColor(Color.gray); g.fillRect(0,0,1400,1400); rekursioon(g,100, 100, 200); } public static void main(String argumendid[]){ Frame f=new Frame("Rekursioon"); f.add(new joonis()); f.setSize(450, 450); f.setVisible(true); f.addWindowListener(new AknaSulgur()); } } class AknaSulgur extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit(0); } }