Foros del Web » Programación para mayores de 30 ;) » Java »

Boton - "detener" ejecución hasta presionar boton

Estas en el tema de Boton - "detener" ejecución hasta presionar boton en el foro de Java en Foros del Web. Buenas, que tal? Tengo el siguiente inconveniente y quería saber si alguien me puede dar una mano... Necesito detener la ejecución de un programa hasta ...
  #1 (permalink)  
Antiguo 05/11/2010, 15:42
 
Fecha de Ingreso: marzo-2010
Mensajes: 16
Antigüedad: 14 años, 1 mes
Puntos: 0
Pregunta Boton - "detener" ejecución hasta presionar boton

Buenas, que tal?
Tengo el siguiente inconveniente y quería saber si alguien me puede dar una mano... Necesito detener la ejecución de un programa hasta que se haga "click" sobre un botón. Es decir, debo parar la ejecución del programa cuando me muestre la venta, y recién cuando se presione sobre el botón "OK" ahí reanudar con la ejecución del programa.
Estaba probando hacerlo con un hilo pero no puedo lograrlo... alguien tiene alguna idea de como hacer esto.... desde ya cualquier idea me vendría muy bien!

A continuación les dejo el código con el cual estoy probando y la idea es que cdo se presione el botón "OK" recién ahí me muestre el ultimo "println" que se encuentra en el main().
Código PHP:
public class ejemplo extends JFrame implements Runnable{

static 
boolean Load=false;
public 
JFileChooser jfcExaminarEntrada;
public 
JButton jbExaminar;
public 
JButton jbLoad;
public 
JPanel jPanel1;
public 
JTextField jtfRutaEntrada;
public 
String dir;
File  myFile;


    public 
ejemplo(){}
    
    
    public 
void run(){
        
synchronized(this){
    
            if(
Load==false){
                
//el problema es q akka tengo q esperar q se cargue la dir, cdo se cargue recien ahi continuar con la ejecucion
                
initComponents();
                }
                else{
System.out.println("hace otra cosa");    }
        }
//sync
    
}//run
    
    
    
private void initComponents() {
        
setTitle("Seleccionar el Archivo");
        
setResizable(false);
        
jfcExaminarEntrada = new JFileChooser();
        
jPanel1 = new  JPanel();
        
jtfRutaEntrada = new  JTextField();
        
jbExaminar = new  JButton();
        
jbLoad = new  JButton();
        
        
        
getContentPane().setLayout(null);

        
jPanel1.setBorderBorderFactory.createTitledBorder("Archivo"));
        
jPanel1.setLayout(null);
        
jPanel1.add(jtfRutaEntrada);
        
jtfRutaEntrada.setBounds(203035019);

        
jbExaminar.setText("...");
        
jPanel1.add(jbExaminar);
        
jbExaminar.setBounds(400305025);

        
jbLoad.setText("OK");
        
jPanel1.add(jbLoad);
        
jbLoad.setBounds(460307025);

        
getContentPane().add(jPanel1);
        
jPanel1.setBounds(303055070);
        
        
java.awt.Dimension screenSize java.awt.Toolkit.getDefaultToolkit().getScreenSize();
        
setBounds((screenSize.width-618)/2, (screenSize.height-150)/2618150);

        
jbExaminar.addActionListener(new ControlaEventos());
        
jbLoad.addActionListener(new ControlaEventos());
        
        
setVisible(true);
        
System.out.println("despues de setVisible");
        
notify();
    }
    
    public class 
ControlaEventos implements ActionListener{
        
        public 
void actionPerformed(ActionEvent evento){
        if (
evento.getSource()==jbExaminar){
            
System.out.println("Entro jbExaminar");    }

        if (
evento.getSource()==jbLoad){
            
System.out.println("Entro jbLoad");    }
        }
    }


    public static 
void main(String[] args){
        
ejemplo st= new ejemplo();
        
Thread td= new Thread(st);
        
td.start();
        
        
synchronized(td){
        try {
        
System.out.println("Esperando a que td se complete...");
        
td.wait();
        
//parar la ejecucion del programa aca, y continuar luego de haber echo click en el boton "OK" (jbLoad)
        //es decir que el proximo cartel de "println" se muestre despues de haber echo click en el boton
        
} catch (InterruptedException ex) { }
        }
    
    
//codigo q deberia ejecutarse despues de hacer click en el boton "OK" (jbLoad)
    
System.out.println("Sigue corriendo ....");
    }

Bueno espero haberme expresado bien... cualquier idea sera muy agradecida...
Saludos..
  #2 (permalink)  
Antiguo 06/11/2010, 18:25
 
Fecha de Ingreso: marzo-2010
Mensajes: 16
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Boton - "detener" ejecución hasta presionar boton

Alguna idea?
Estoy estudiando el tema de los "hilos", creo que por ahí lo puedo solucionar, pero no estoy seguro :( ... cualquier ayuda o consejo me vendría muy bien.

saludos!

Etiquetas: presionar, botones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:23.