![]() |
Maximizar correctamente
Hola,
tengo un problemilla que seguramente sea un absurdo y que casi me da verguenza preguntar pero me tiene ofuscadísimo y no consigo averiguar nada. Tengo una aplicación que quiero que se inicialize maximizada, sin bordes, ni barra de título, ni botones de cerrar, minimizar... Pero cuando la configuro y ejecuto, el maximizado no respeta la barra de tareas de windows y, o bien la oculta para poder ocupar toda la pantalla, o bien se maximiza ocupando toda la pantalla pero por detras de la barra de tareas y poniendo un scrollbar vertical. Yo sólo quiero que ocupe el espacio libre (toda la pantalla respetando la barra de tareas). ¿Alguna solución?. Un saludo y gracias. |
El comportamiento que describes es el normal, son las aplicaciones a pantalla completa, y cubren incluso la barra de tareas. Lo que puedes hacer es dejar la ventana sin bordes pero asignarle tú mismo la posición y tamaño:
Screen.WorkAreaRect es el área del monitor que no está ocupada por la barra de tareas ni ninguna otra barra similar. // Saludos |
Hola, ante todo muchas gracias. He probado lo que me comentas y veo que funciona con algún problemilla ya que en las dos últimas líneas me da un error de violacion vcl90.bpl. Voy a investigar un poco porque si WorkAreaRect ya existe, no debería tener problemas de memoria pero bueno, si sabes algo te agradecería la ayuda.
|
Solucionado!!. Ok hice una pequeña traza y vi lo que pasaba. El problema era que mi formulario atendía al evento onResize para dibujar pero algunas cosas (paneles, mapas,...) se crean de forma dinámica y después de ejecutar esas líneas. Así que cuando se cambia el width y height se ejecuta el onResize e intenta cambiar los valores de top, left, width y height de elementos que aún no han sido creados.
Nuevamente gracias. |
Que buen aporte, se que ya ha pasado mucho tiempo desde que solucionaron este problema. Pero es una excelente ayuda.:):)
|
La franja horaria es GMT +2. Ahora son las 18:58:02. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi