FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Mostrar Ventana Monitor secundario
Holas,
Alguno de ustedes sabe cómo reconocer las coordenadas ó el punto (0, 0) del monitor secundario en caso tenga instalado más de un monitor en mi PC?. Quiero hacer que una ventana se ejecute siempre en ese monitor y siempre maximizado. Agradezco su ayuda. Slds. |
#2
|
|||
|
|||
Mirate "Screen.MonitorCount" para saber el numero de monitores, y a partir de ahi las propiedades y metodos de "Screen.Monitors[Numero de monitor]".
Un Saludo. |
#3
|
||||
|
||||
¿Has revisado la clase TScreen y TMonitor?
Desde la primera tienes acceso a un propiedad que te da el número de monitores y acceso a cada uno de ellos mediante la segunda clase. Accediendo a los monitores puedes obtener las coordenadas y supongo que a partir de ahí podrás calcular la posición del escritorio correspondiente a la (0,0) del segundo.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#4
|
|||
|
|||
Muchas gracias por sus respuestas, pero lamentablemente no me sirvio de mucho, lo que intento hacer es: Al abrir una nueva ventana desde mi aplicacion, por default se abra en el monitor secundario, al inicio me imagine que si conseguia las coordenadas del segundo monitor lo conseguiria, pero no funciono:
Esta es la parte de mi codigo ============================= NewForm := TNewForm.Create(Self); NewForm.Left := Screen.Monitors[1].Left; NewForm.Top := Screen.Monitors[1].Top; NewForm.Show; ============================= Tienen idea de como puedo resolver esto? Muchas gracias por sus aportes |
#5
|
||||
|
||||
pues a mi si me sale:
Código:
Monitor Nº: 0 IsPrimary : True Dimensiones estandard Left 0 Top 0 Width 1024 Height 768 BoundsRect Left 0 Top 0 Right 1024 Bottom 768 WorkareaRect Left 0 Top 0 Right 1024 Bottom 738 Monitor Nº: 1 IsPrimary : False Dimensiones estandard Left 1024 Top 0 Width 1024 Height 768 BoundsRect Left 1024 Top 0 Right 2048 Bottom 768 WorkareaRect Left 1024 Top 0 Right 2048 Bottom 768
¿qué obtienes tú? Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
#6
|
||||
|
||||
Cita:
¿EWjecuta paso a paso y dinos qué valor tienen Left y Top? (la primera debería ser la ancura del primer monitor y la segunda 0).
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#7
|
|||
|
|||
Al ejecutar paso a paso, los valores que obtengo son:
Para Screen.Monitors[1].Left Valor = 0; //Esto es el punto X de origen del monitor, no el ancho, el ancho es me lo da el weight Para Screen.Monitors[1].Top Valor = 0; //Esto es el punto Y de origen del monitor. Finalmente lo que obtengo con esta parte del codigo es:
Que la ventana me lo muestre en el primero monitor, esto debido a que, al asignarle 0, 0 como puntos de origenes, lo envia a la esquina superior izquierda del monitor primario, cuando lo que deseo es que lo envie a la esquina superior izquierda, pero del segundo monitor. Gracias por el interes y la ayuda |
#8
|
||||
|
||||
AYUDA:
In multi-monitor applications, the available screen space can span multiple monitors from left to right. Read Left to determine where, in the entire available screen space, this monitor appears. The value of Left is in pixels relative to the left edge of the primary monitor. Se supone que el Left del segundo monitor te debería devolver un valor igual al Width del primero, es decir (por lo que yo entiendo) el pixel a partir del cual empieza el segundo monitor. Si te devuelve 0, ya sabemos porque no te aparece en el segundo; Lo que hay que saber ahora es porqué te devuelve 0 (la propiedad Left). ¿Como tienes la configuración de Multimonitor en Windows?
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Mostrar mensaje sobre cualquier ventana | valera | Varios | 4 | 14-05-2012 11:44:47 |
Mostrar ventana de bienvenida antes del form1 | Greco | Varios | 3 | 01-08-2007 20:44:20 |
Si mi ventana esta oculta como la Puedo mostrar | JULIPO | API de Windows | 4 | 07-02-2006 00:07:31 |
mostrar ventana de login para acceder al servidor | feusebi | API de Windows | 0 | 13-01-2006 15:24:09 |
Al mostrar Hint, desaparece ventana | nowheremanza | OOP | 4 | 19-09-2005 22:37:03 |
|