Este foro usa cookies
Este foro utiliza cookies para almacenar su información de inicio de sesión si está registrado y su última visita si no lo está. Las cookies son pequeños documentos de texto almacenados en su computadora; las cookies establecidas por este foro solo se pueden usar en este sitio web y no representan ningún riesgo de seguridad. Las cookies en este foro también rastrean los temas específicos que ha leído y la última vez que los leyó. Si Ud. continúa navegando, entenderemos que acepta todas las cookies.

Se almacenará una cookie en su navegador, independientemente de la elección, para evitar que se le vuelva a hacer esta pregunta. Podrá cambiar la configuración de sus cookies en cualquier momento utilizando el enlace en el pie de página.

Borrar este aviso
El foro antiguo se encuentra accesible desde https://foro.gambas-es.org en modo de solo lectura.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

[SOLUCIONADO]  ¿Como lanzar form por pantalla secundaria?
#1

buenas,

En el programa VisorRV1960 hay una parte donde muestra en un formulario maximizado una lista x de versículos.
El asunto es que cuando se lanza lo hace en la pantalla1 y hay que desmaximizarlo correrlo a la pantalla2, maximizarlo y recién ahí esta pronto correctamente para trabajar.

La pregunta es como se hace para detectar la segunda pantalla y lanzar el formulario en ella?

El tiempo de las manifestaciones caducó pero el boicot con auto sacrificio es el camino para derrotar al sistema.
#2

Si por "pantalla" te refieres a "Escritorio" (Desktop), en mi opinion tienes que utilizar la Propiedad " .Desktop " de la Clase " DesktopWindow " activando el Componente gb.desktop .

Exemplum simplex
:
GAMBAS
  1. Public Sub Button1_Click()
  2.  
  3.   Dim dw As DesktopWindow
  4.  
  5.   With dw = New DesktopWindow(Me.Id)
  6. ' Muevamos el formulario principal de nuestra aplicación al tercer escritorio (índice 2):
  7.     .Desktop = 2
  8.  



"Los horizontes perdidos nunca regresan. " (F. Battiato)
#3

me refiero a una laptop con un proyector o una pantalla secundaria via vga, teniendo asi dos pantallas, por la laptop sale visor y por la pantalla secundaria una ventana x.

El tiempo de las manifestaciones caducó pero el boicot con auto sacrificio es el camino para derrotar al sistema.
#4

Ah, ahora creo que comprendo.
El uso de dos pantallas siempre ha sido un gran problema y un gran misterio sin resolver en Gambas. Confused

...pero...quizás con los recursos de GStreamer mediante gb.media...

"Los horizontes perdidos nunca regresan. " (F. Battiato)
#5

Yo lo haria por coordenadas (sabiendo que dimensiones tengo en las dos pantallas):
Código:
 
' Gambas class file


Public Sub Button1_Click()

  Dim FTMP As New Form1
  
  FTMP.X = 10 'PANTALLA 1
  FTMP.Y = 10 'PANTALLA 1
  
FTMP.SHOW
End

Public Sub Form_Open()

  Me.X = 100
  Me.Y = 200

End

Public Sub Button2_Click()

   Dim FTMP As New Form1
  
  FTMP.X = 1700 'PANTALLA 2 'DEPENDE DE LAS DIMENSIONES DE PANTALLA QUE TENGAS
  FTMP.Y = 10 'PANTALLA 2
  
FTMP.SHOW

End
#6

El tema podría funcionar con algo como esto.
GAMBAS
  1.  
  2.   For n = 0 To Screens.Count - 1
  3.     If Screens[n].AvailableWidth > b Then
  4.       b = Screens[n].AvailableWidth
  5.       x = n
  6.     Endif
  7.   Next
  8.  
  9.   Me.x = Screens[x].AvailableX
  10.   Me.y = Screens[x].AvailableY


Saludos
#7

gracias tincho excelente aporte, resolví con esto:

If Screens.Count > 1 Then
    Me.X = Screens[1].X
    Me.y = Screens[1].y
  Else
    Me.X = 350
    Me.y = 10
  Endif

El tiempo de las manifestaciones caducó pero el boicot con auto sacrificio es el camino para derrotar al sistema.


Posibles temas similares…
Tema / Autor Respuestas Vistas Último mensaje

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)