Java Swing GUI horas de vidrio

Hay un JTabbedPane En mi Swing programa.
Cuando el usuario hace clic en una ficha, el programa toma un tiempo para obtener los datos de proceso y de los resultados, a continuación se muestran los resultados en la pestaña seleccionada.

¿Cómo puedo mostrar un vidrio de la hora, o algo de ese efecto de forma que el usuario sabe que es el procesamiento de datos? No haga clic en la ficha de nuevo antes de que termine de trabajo.

InformationsquelleAutor Frank | 2009-12-21

5 Kommentare

  1. 6

    Un JProgressBar (posiblemente en indetermiante modo) suena bien – puesto que en la ficha hasta que los datos se han recuperado. Un buen diseño de interfaz de usuario no debe obligar al usuario a esperar por mucho tiempo-ejecución de tareas para completar y, en su lugar les permiten hacer algo más en el medio.

    • A tal fin, tengo la esperanza de que el tiempo de ejecución de la tarea se realiza en un hilo separado.
    • Voy a tratar de esto, tiene sentido, por lo que el usuario va a saber cuánto tiempo debe esperar.
  2. 24

    La forma más sencilla es simplemente llame a setCursor en el componente correspondiente (probablemente la ventana de nivel superior) con la correspondiente Cursor.

    component.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));

    Y, a continuación, establezca de nuevo cuando haya terminado.

    component.setCursor(Cursor.getDefaultCursor());
    • Genial, es simple y eficaz.
    • Esto me ayudó mucho. Gracias.
  3. 3

    setCursor(int) está en desuso. Este es probablemente un poco de limpiador:

    setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
  4. 0

    Yo como otros mencionados

    • Cambiar el cursor
    • Utilizar un SwingWorker
    • Mostrar la barra de progreso o una imagen animada en la glasspane
    • Ocultar la glasspane cuando se completa la tarea
    • Restaurar el valor predeterminado de cursor

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea