Mi aplicación ofrece la capacidad de iniciar una tarea de larga ejecución. Cuando esto ocurre, se genera un JDialog
no modal que muestra el progreso de la tarea. Específicamente, hago el diálogo no modal para permitir al usuario interactuar con el resto de la GUI mientras se ejecuta la tarea.JDialog sin modelar debe estar visible en la parte superior del elemento principal
El problema al que me enfrento es que si el diálogo se oculta detrás de otras ventanas en el escritorio se vuelve difícil de localizar: no hay un elemento correspondiente en la barra de tareas (en Windows 7), ni hay un icono visible en el menú Alt + Tab.
¿Hay una manera idiomática de resolver este problema? Consideré agregar un WindowListener
a la aplicación JFrame
y usar esto para llevar el JDialog al primer plano. Sin embargo, es probable que esto se vuelva frustrante (ya que presumiblemente significará que JFrame pierde el foco).
¿Por qué no usar un JFrame en su lugar? Esa es una de las principales diferencias: el botón en la barra de tareas. –
Porque no quiero que el diálogo ofrezca maximizar o minimizar la funcionalidad. – Adamski
Puede usar setResizable (falso); Permitiría minimizar, de lo contrario, la aplicación podría ser un poco ofensiva, OMI. –