Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Restablecer El Reflesco Original Del Monitor

Iniciado por sotreum, 13 de Agosto de 2003, 02:49:46 AM

« anterior - próximo »

sotreum

 pues resulta q estamos haciendo un juego en visual basic y cuando entras se pone a 800 x 600 y a 16 bits y si sales se restablece a la resolucion q tengas en el monitor y a los bits de color q tubieras pero resulta q se queda a 60 hercios el monitor en vez de  restablecerse.
Si alguien sabe como solucionarlo se lo agradeceria mucho.

Por cierto si alguien esta interesado en participar en el proyecto q me lo comuniq q siempre es bien venido.

la pagina principal es http://aogames.iespana.es no esta muy actualizada porq estamos con la programacion y los graficos pero bueno si alguien quiere verla.

BeRSeRKeR

 En el API Win32 tienes dos funciones que podrían servirte.

Por un lado tienes la función:

BOOL EnumDisplaySettings(
 LPCTSTR lpszDeviceName, // display device
 DWORD iModeNum,           // graphics mode
 LPDEVMODE lpDevMode    // graphics mode settings
);


Si a iModeNum le pasas el valor ENUM_CURRENT_SETTINGS o ENUM_REGISTRY_SETTINGS te devuelve la configuración actual y la almacena en lpDevMode, estructura que contiene un miembro llamado dmDisplayFrequency que contiene la frecuencia de refresco.

A esta función la llamarías antes de cambiar el modo gráfico para obtener la configuración actual. Cuando quieras restaurar dicha configuración, utiliza la función:

LONG ChangeDisplaySettings(
 LPDEVMODE lpDevMode,  // graphics mode
 DWORD dwflags               // graphics mode options
);

a la cual le deberías pasar la estructura lpDevMode que obtuviste con la función EnumDisplaySettings.

No se si todo eso será así exactamente pero por ahí deben ir los tiros. Mírate la MSDN para más información sobre estas funciones.

Saludos
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

sotreum

 pero es visual basic 6.0  <_<  no c++ alguien sabe una solucion para este lenguaje????  :(  

Mars Attacks

Cita de: "sotreum"pues resulta q estamos haciendo un juego en visual basic
Hey, creo que el fallo ha sido tuyo.

BeRSeRKeR

 Se pueden utilizar funciones del API Win32 en Visual Basic sin ningún problema...
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

sotreum

 Umm si el fallo a sido mio sorry  (nooo)  pero esq yo no soy el programador sino el diseñador y el grafista  :blink: , pero es lo q me dijo el programador, pues si alguien fuera tan amable de explicarmelo mas claro se lo agradeceria mucho.

PDT os referis al visual basic net o al 6.0 o es indiferente? nosotros usamos el 6.0 por si sirve de algo.

BeRSeRKeR

 Por casualidad he encontrado en un foro a gente con tu mismo problema. Echale un vistazo a este thread. En la parte inferior también podrás encontrar otros threads relacionados con el tema del refresco de pantalla.

También puedes mirarte este otro thread

Creo que más o menos vienen a decir lo mismo que yo te he dicho, es decir, recoges la configuración original del sistema con EnumDisplaySettings y cuando vayas a cerrar la aplicación la restauras con SetDisplaySettings pasándole como parámetro la configuración original.

Saludos

PD: y sí, lo que te digo también sirve para VB 6.0
¡Si te buscan en nombre de la ley, huye en nombre de la libertad!!

sotreum

 Pues muchísimas gracias le made la dirección de este post al programador espero q le sirva de ayuda.

(ole)  (ole)  (ole) BeRSeRKeR (ole)  (ole)

Te lo has currado jeje ya tendrás la oportunidad de  echarnos otra mano con problemas puntuales que seguro q los tendremos  ;)

Pues eso Konde q si tienes alguna duda utiliza esta gran pagina para postear q con gente como BeRSeRKeR no habrá problema q se nos resista

UN SALUDO PA TODOS






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.