java animation loading

java - Creando una bonita animación "CARGANDO..."



animation loading (3)

Posible duplicado:
¿Bastante alternativa a JProgressBar?

Tengo un proceso que tarda varios segundos en cargar, y quiero crear una animación en Java Swing hasta que termine de cargar.

Me gustaría evitar el uso de una ProgressBar típica y usar un buen progreso infinito moderno como este

Estoy al tanto de preguntas similares, pero esto es estrictamente relacionado con Java Swing. ¿Hay alguna biblioteca o ejemplo para esto?


Claro que es posible. Puede usar la herramienta AjaxLoad para generar una imagen animada, que se puede usar en cualquier contenedor de imagen / html.


Simplemente use un ImageIcon para esta tarea, anima automáticamente los gifs . El siguiente código produjo esta captura de pantalla ( el ajax-loader.gif se descargó de http://www.ajaxload.info/ ):

Código:

public static void main(String[] args) throws Exception { JFrame frame = new JFrame("Test"); ImageIcon loading = new ImageIcon("ajax-loader.gif"); frame.add(new JLabel("loading... ", loading, JLabel.CENTER)); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(400, 300); frame.setVisible(true); }


Recomiendo usar el cristal para este tipo de actividad. Los pasos involucrados son:

  • Crea un JComponent con BorderLayout . Agregue un JLabel al CENTER que incluye el icono .gif animado de su elección.
  • (Opcional) Anule el método de paint(Graphics) para hacer que su GUI aparezca atenuada (o atenuada). Para lograr esto, debe dibujar un rectángulo relleno del tamaño del componente, llenando el rectángulo con un Color semitransparente.
  • Agregue el componente como el cristal del marco raíz de su aplicación.