Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

247
Vistas
La GUI de Java Swing se representa detrás de la barra de tareas de Windows

Tengo problemas con la posición de la GUI de mi aplicación. Eso significa que en Linux (Centos 6) aparece correctamente en la barra de tareas superior, pero en Windows 8.1 aparece detrás de la barra de tareas en la parte inferior de la pantalla. ¿Cuál puede ser el problema?

Estoy usando el siguiente código para establecer dimensiones. (He adjuntado pantallas a continuación)

 UiConfig.getInstance().bottomRightUI(dispalyWidth, displayeHeight); setBounds(UiConfig.getInstance().getX(), UiConfig.getInstance().getY(), dispalyWidth, displayeHeight);

Siguiente clase utilizada para obtener la dimensión dinámica de la pantalla actual

 public class UiConfig { private static final UiConfig instance = new UiConfig(); public static UiConfig getInstance() { return instance; } public void bottomRightUI(int width, int height) { x = (int) ((screen_width - width)); y = (int) ((screen_height - height)); } public int getX() { return this.x; } public int getY() { return this.y; } }

en linux

GUI en Linux

en ventanas

GUI en Windows

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Para lograr la transparencia de la barra de tareas en Windows, debe informar el tamaño del escritorio como "sin la barra de tareas" para tener píxeles que se mezclen con el canal alfa de la barra de tareas. Cuando configura la barra de tareas para que no sea transparente, obtendrá el comportamiento que desea.

El sistema operativo alimenta a Swing / Java con los números en las dimensiones de la pantalla, y si recibe un conjunto de números, los usará como se le indicó.

La única solución para esto sería escribir un código de detección de "sistema operativo" personalizado, un código de detección de "barra de tareas" personalizado para los sistemas operativos problemáticos y escribir rutinas de reconfiguración de swing para "ajustar" las dimensiones a una huella más pequeña a pesar de lo que el sistema operativo está informando que la huella es. Este tipo de código es muy poco portátil y ciertamente no era necesario cuando se creó Swing, por lo que no está en Swing de forma nativa.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda