Ver la Versión Completa : ¿Adaptar a cualquier resolución o cambiar a la que to quiera?
Jan_polero
23-11-2004, 11:15:00
Hola a todos,´mi intención es hacer un pequeño juego que se adaptase a cualquier resolución de pantalla. Por ello, me gustaría que me facilitaseis algunos aspectos a tener en cuenta.O si convendría más adaptar la resolución a la que yo quiera,gracias.
Cabanyaler
23-11-2004, 11:37:35
Voy a exponerte lo que yo hago en mis aplicaciones. primero controlo la resolución que tiene el usuario y le pongo la que yo deseo (presuponiendo que la targeta gráfica la soporte). Al salir repongo la resolución que tenía.
Una mejora (como posible ejercicio de repaso ;) ), podría ser el implementar la reposición de la resolución del usuario al minimizar también la aplicación, poniendo la deseada de nuevo al magnificarla.
Indicaré el código y la unidad donde incluirlo.
Espero te sirva.
Lugar: Unidad principal del proyecto, donde se lanza la aplicación.
var
// Añadido para la resolución
ResOriginal:TDevMode;
NuevaRes:TDevMode;
// Fin Añadido para la resolución
cambio:boolean; // Var. bandera para saber si he cambiado la resolución
Lugar: Unidad principal del proyecto, donde se lanza la aplicación. Justo despues del begin de comienzo del principal.
begin
// Añadido para la resolución
cambio:= false;
// Guarda la resolución original
EnumDisplaySettings(Nil,Cardinal(-1),ResOriginal);
// Si la resolución es diferente de 1024x768, la cambia
If ((Resoriginal.dmpelsWidth<>1024) or (Resoriginal.dmpelsheight<>768))
then
begin
EnumDisplaySettings(Nil,Cardinal(-1),NuevaRes);
NuevaRes.dmpelsWidth :=1024;
NuevaRes.dmPelsHeight:=768;
ChangeDisplaySettings(NuevaRes,CDS_UPDATEREGISTRY);
cambio:= true;
end;
// Fin añadido por la resolución
Lugar: Unidad principal del proyecto, en la última línea del cuerpo principal.
// Restaura la resolución original
if cambio then ChangeDisplaySettings(Resoriginal,CDS_UPDATEREGISTRY);
Espero no haberme dejado nada.
Sort.
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.