// DDeleven22.java screensaver drawing lines
//
// to program in windows: from MSDOS prompt
//cd \mydocu~1    and "edit file.java"
//\jdk1.4\bin\javac file.java
//\jdk1.4\bin\java file

// using timer in swing
//modify solution to ex11.21 to enable the user to
//enter the number of random lines that should be
//drawn before the application clears itself and
//starts drawing lines again.  Use a JTextField to
//obtain the value.  The user should be able to
//type a new number into JTextField at any time.

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class DDeleven22 extends JFrame implements ActionListener {
   private String s = "Using drawString!";
  private JTextField text1;
public DDeleven22() {
  super("drawing lines " );
 Timer timer= new Timer(1000,this);
  timer.start(); 
  Container c= getContentPane();
  c.setLayout(new FlowLayout());
  text1 = new JTextField(10);
 text1.addActionListener(this);
  c.add(text1);
  setSize(400,165);
  show();
}


public void actionPerformed( ActionEvent e){
   repaint(); }

public void paint (Graphics g ) {
super.paint(g );
  g.setColor( Color.red );
  g.drawLine(5,30,350,30 );
 int numLines=Integer.parseInt(text1.getText());
for (int i=0; i < numLines; i++) {
int x1= (int) (Math.random() *400);
int x2= (int) (Math.random() *400);
int y1=(int) (Math.random() *165);
int y2 = (int) (Math.random() *165);
g.drawLine(x1,y1,x2,y2); }// end of for i loop
}

public static void main( String args[] ) {
  DDeleven22 app = new DDeleven22();
  app.addWindowListener(
     new WindowAdapter() {
      public void windowClosing(WindowEvent e )
    { System.exit( 0 ); }
    
  }
  );
 }
}



       
