/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package borrar;

import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;

/**
 *
 * @author felix
 */

public class verHilo extends JFrame{
    private JTextField campoTexto;
    private JTextField campoTexto1;
    private JTextField campoTexto2;
    private JButton boton;
    private Contador1 contador1;
    private Contador2 contador2;
    
    public verHilo() {
        super("Hilos");
        definirVentana();
        this.setSize(400, 400);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setVisible(true);
        contador1 = new Contador1();
        contador2 = new Contador2();
        contador1.start();
        contador2.start();
    }
    
    public void definirVentana() {
        campoTexto = new JTextField(10);
        campoTexto1 = new JTextField(3);
        campoTexto2 = new JTextField(3);
        boton = new JButton("Ok");
        
        boton.addActionListener(new AccionBoton());
        this.setLayout(new FlowLayout());
        
        add(campoTexto);
        add(campoTexto1);
        add(campoTexto2);
        add(boton);
    }
    
    class Contador1 extends Thread {
        private int cuenta =0;
        
        @Override
        public void start() {
            super.start();
            System.out.println("Hola ya comence");
        }
        
        @Override
        public void run(){
            while(true) {
                if (cuenta < 100)
                    cuenta = cuenta +1;
                else cuenta = 0;
                try {
                    sleep(100);
                } catch (InterruptedException ex) {
                    Logger.getLogger(verHilo.class.getName()).log(Level.SEVERE, null, ex);
                }
                campoTexto1.setText(Integer.toString(cuenta));
            }
        }
    }

    class Contador2 extends Thread {
        private int cuenta =0;
        
        @Override
        public void run(){
            while(true) {
                if (cuenta < 1000)
                    cuenta = cuenta +10;
                else 
                    cuenta = 0;
                try {
                    sleep(100);
                } catch (InterruptedException ex) {
                    Logger.getLogger(verHilo.class.getName()).log(Level.SEVERE, null, ex);
                }
                campoTexto2.setText(Integer.toString(cuenta));
            }
        }
    }    
    class AccionBoton implements ActionListener{

        public AccionBoton() {
        }

        public void actionPerformed(ActionEvent arg0) {
            Random r = new Random();
            campoTexto.setText("" + (Math.abs(r.nextInt())%200));
        }
    }
    
    static public void main(String args[]) {
        new verHilo();
    }
    

}
