Lo que me gusta, me interesa y me motiva…
RSS icon Home icon
  • Usando SwingWorker para correr procesos en background

    Muchas veces necesitas, en una aplicacion swing, correr algún proceso en
    background e ir actualizado un texto o componente de la pantalla a medida que se
    ejecuta el proceso.
    Para eso podemos usar javax.swing.SwingWorker

    Ejemplo:

        private void jButton1ActionPerformed(ActionEvent evt) {

            WorkInBackground w = new WorkInBackground();
            w.addPropertyChangeListener(new PropertyChangeListener(){

                public void propertyChange(PropertyChangeEvent evt) {
                    if(evt.getPropertyName().equals(“operationResult”)){
                        // aqui puedes actualizar algun label o componente de la aplicacion swing
                    }
                }
               
            });
           
             
        }

        class WorkInBackground extends SwingWorker {

            @Override
            protected Object doInBackground() throws Exception {
                firePropertyChange(“operationResult”, null, “NEW VALUE”);
                return null;
            }
           
        };


    Entradas relacionadas

    Leave a reply