Page 1 of 1

Trabajar con dos pantallas

PostPosted: Sun Jan 08, 2023 11:00 am
by antolin
Buenas a todos.

Los reyes me han traído un monitor nuevo, aleluya, así que ahora trabajo con dos pantallas. El problema, la nueva es de 2560X1440 y la antigua de 1920x1080. Los configuro como monitores extendidos, pero cuando abro mi aplicación en el monitor pequeño no detecta su resolución y los diálogos se salen de la pantalla. Los dos monitores trabajan como uno sólo.

Es más. pongo unas alertas para que al arrancar la aplicación me dé GetSysMetrics(0) y GetSysMetrics(1) y me dice que 2560 y 1440 en el monitor de 1920x1080, es decir, no sabe en que resolución está ejecutándose. Hay forma de que la aplicación de FWH detecte que realmente está sobre 1920x1080. Se tiene que poder hacer, porque las aplicaciones de Windows siempre saben en qué resolución están corriendo´

Muchas gracias de antemano. Iba a decir "feliz navidad" pero ya no estamos de vacaciones...

Re: Trabajar con dos pantallas

PostPosted: Sun Jan 08, 2023 2:24 pm
by karinha
Que usas, RECURSOS by Workshop.exe ó @Código?

Regards, saludos.

Re: Trabajar con dos pantallas

PostPosted: Sun Jan 08, 2023 5:04 pm
by antolin
Utilizo código. Pero da igual si el programa no detecta la resolución correcta.

Re: Trabajar con dos pantallas

PostPosted: Sun Jan 08, 2023 5:23 pm
by JESUS MARIN
Has probado a poner los dos monitores a la misma resolucion ? 1920x1080

Re: Trabajar con dos pantallas

PostPosted: Sun Jan 08, 2023 7:40 pm
by antolin
Ya. Eso era lo fácil. Pero el de 27 pulgadas prefiero a más resolución y el de 23 a menos. Pero me temo que no se puede. El Windows 10 en ese aspecto deja mucho que desear... Y no me apetece conocer el 11, que yo empecé con el 3.0 y MS-DOS y ya he cambiado bastante.
Gracias por el interés

Re: Trabajar con dos pantallas

PostPosted: Sun Jan 08, 2023 9:55 pm
by Jimmy
hi,

did you start your App on 1st or 2nd Monitor ?
if 2nd Monitor : is 2nd "left" or "right" from 1st Monitor (can be change)

i do use a CONFIG.INI where "left" Position have "negative" (!) Value

Re: Trabajar con dos pantallas

PostPosted: Mon Jan 09, 2023 11:41 am
by antolin
Jimmy: Although I start the application on the second screen, when I ask for the resolution it tells me that it is 2560x1440. It does not read the resolution of the extended screen but that of the main one. Don't worry, programming I'll put the two screens with the same low response and that's all. I was just wondering if there was any way, even in C++, to know what resolution the program is running at.

Best regards

Re: Trabajar con dos pantallas

PostPosted: Mon Jan 09, 2023 2:03 pm
by cnavarro

Re: Trabajar con dos pantallas

PostPosted: Tue Jan 10, 2023 5:25 pm
by antolin
cnavarro. Gracias ya conocía GetSysMetrics( 78 ). El problema es que el programa no sabe en qué monitor está corriendo. Tampoco sabría la resolución vertical. El caso es que los windows MDI se dimensionan perfectamente al arrancar, y GetClienteRect() me da un valor correcto. Pero para eso el MDI tiene que estar abierto y necesito saber las dimensiones antes de que se abra... El valor lo trae el LParam del método HandleEvent() de TWindows. Lo suyo sería simular una maximización de pantalla para captar el LParam de HandleEvent() antes de definir mi primer Windows, pero no sé cómo hacerlo

Re: Trabajar con dos pantallas

PostPosted: Tue Jan 10, 2023 6:02 pm
by karinha

Re: Trabajar con dos pantallas

PostPosted: Fri Jan 13, 2023 7:24 pm
by antolin
Gracias karinha: Pero yo no quiero cambiar la resolución de ninguna pantalla, sólo averiguar la de mi segundo monitor. Y veo que no parece tarea fácil. Puedo saber cuanto mide de ancho, pero no de alto. No te preocupes, ya me las apañaré