Ir al contenido



Foto

como mostrar una form en pantalla extendida


  • Por favor identifícate para responder
3 respuestas en este tema

#1 cl2raul66

cl2raul66

    Member

  • Miembros
  • PipPip
  • 18 mensajes

Escrito 08 octubre 2014 - 09:14

hola a todos, estoy haciendo una aplicacion y se me ocurrió mostrar un formulario(ejemplo de gráficos de estadísticas y cosas así) en la pantalla extendida; las personas q tienen mas de dos monitores conectados al mismo ordenador tienen la opción d duplicar la pantalla y extender el escritorio, bueno como le digo al form si encuentra una pantalla extendida que se muestre en esta...

gracia de antemano
  • 0

#2 cram

cram

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 824 mensajes
  • LocationMisiones, Argentina

Escrito 08 octubre 2014 - 12:51

Supongo que podrías empezar intentando consultar por el tamaño de pantalla, ya que al ser extendida es muy probable que la cantidad de pixeles horizontales sea igual a la suma de la cantidad de pixeles horizontales de cada pantalla.
En otras palabras, podrías consultar por la resolución del escritorio. Luego, podrías detectar la resolución de la pantalla primaria y deducir la resolución de la pantalla secundaria.

Esto no es una solución. Solo es para que lo pruebes, ya que lo contesto apurado y sin investigar mucho sobre el asunto, o sea, usando algo de sentido común. (Lo único que no me cabe es cuando los monitores usan distinta resolución.)

DefaultLocation determina el lugar en que se ubica el form al activarse.
poDesktopCenter, por ejemplo ubica el form en el centro.

También podrías averiguar algo desde la función GetSystemMetrics.
http://msdn.microsof...5(v=vs.85).aspx


Saludos.

  • 0

#3 genriquez

genriquez

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 521 mensajes
  • LocationCali, Colombia

Escrito 09 octubre 2014 - 05:10

Hola

Puedes revisar Vcl.Forms.TScreen.Monitors esto lo tomo de XE2, pero se que viene desde hace varias versiones.

En este array encuentras los monitores diponibles.

Igualmente puedes jugar con la propiedad TForm.Monitor para posicionarlo en un monitor especifico.

y cada formulario también tiene una propiedad llamada TForm.defaultMonitor la cual le indica como debe crear un formulario por defecto dependiendo donde se encuentra el formulario principal.  es decir si la aplicación la mueves a la pantalla extendida y creas el form, donde la debe ubicar por defecto.

Espero sea de utilidad.
  • 0

#4 cram

cram

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 824 mensajes
  • LocationMisiones, Argentina

Escrito 09 octubre 2014 - 05:42

Genriquez,
Si bien no lo pregunté Yo, agradezco esa información. Es muy útil.  (y)

Saludos
  • 0