Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Gráficos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-11-2004
Jan_polero Jan_polero is offline
Miembro
 
Registrado: may 2004
Posts: 62
Poder: 20
Jan_polero Va por buen camino
¿Adaptar a cualquier resolución o cambiar a la que to quiera?

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.
Responder Con Cita
  #2  
Antiguo 23-11-2004
Avatar de Cabanyaler
Cabanyaler Cabanyaler is offline
Miembro
 
Registrado: jun 2003
Ubicación: País Valencià
Posts: 339
Poder: 21
Cabanyaler Va por buen camino
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.
Código Delphi [-]
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.
Código Delphi [-]
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.
Código Delphi [-]
// Restaura la resolución original
  if cambio then ChangeDisplaySettings(Resoriginal,CDS_UPDATEREGISTRY);

Espero no haberme dejado nada.
Sort.
__________________
El meu país és tan petit, que des de dalt d'un campanar es pot veure el campanar veí.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 00:32:01.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi