• Martes 23 de Abril de 2024, 08:20

Autor Tema:  Re: Como no pasarme de la resolución de pantalla.  (Leído 1464 veces)

gabperez

  • Miembro activo
  • **
  • Mensajes: 51
    • Ver Perfil
    • http://www.enlacesjuridicos.com.ar
Re: Como no pasarme de la resolución de pantalla.
« en: Miércoles 4 de Diciembre de 2002, 16:59 »
0
Hola a todos!
Tengo un programita que cuando alguien quiere ver un text de ayuda, abre otro Form, donde aparece el texto, el problema es que yo lo programé en una resolúción de 800X600 y se veia bien. pero cuando lo quiero ver en otras máquinas con menor resolución, se me "pierde" parte de los Formularios. Cómo puedo controlar esto???
Gracias y espero sus respuestas.

javierbalk

  • Miembro MUY activo
  • ***
  • Mensajes: 142
  • Nacionalidad: 00
    • Ver Perfil
    • Print preview y grabar PDF en Visual Basic 6
Re: Como no pasarme de la resolución de pantalla.
« Respuesta #1 en: Jueves 5 de Diciembre de 2002, 04:59 »
0
Hola:

Cambiale el Top de ese form para colocarlo más arriba.

Ejemplo:
Formulario.Top = 1000

Saludos,
Javier

javierbalk

  • Miembro MUY activo
  • ***
  • Mensajes: 142
  • Nacionalidad: 00
    • Ver Perfil
    • Print preview y grabar PDF en Visual Basic 6
Como no pasarme de la resolución de pantalla.
« Respuesta #2 en: Jueves 5 de Diciembre de 2002, 14:37 »
0
Mas acerca del tema:

En el objeto Screen de VB tienes propiedades de la pantalla:

Width = Ancho
Height = Alto

se usa, por ejemplo:
Msgbox Screen.Width

Te lo da en Twips, que es una unidad de medida que es Standar en VB (hasta VB6).

Los formularios a su vez tienen las propiedades:

Width = Ancho
Height = Alto

y

Top = Posición a lo alto, es decir, determina la posición en el eje de las Y, nada más que al aumentar el valor se coloca más abajo.

Left= Posición en el eje de las X, siempre en Twips

También los controles tienen estas propiedades, de modo que se pueden ajustar las posiciones.

Todas estas propiedades se pueden cambiar tanto en tiempo de diseño como en tiempo de ejecución.

Ahora, bien, si las vas a cambiar en tiempo de ejecución para ajustarla a la resolución de pantalla o al estado de una ventana (si la maximiza o la restaura por ejemplo), necesitas de un evento donde hacerlo. Para eso puedes utilizar el evento Resize del formulario y colocar el código necesario ahí. Este evento se dispara cada vez que el formulario cambia de tamaño.
También este evento ocurre la primera vez que se está por mostrar el formulario.

Una forma lógica sería colocar los Width, Height, Left y Top de los controles en este evento Resize del Form, y los Width, Height, Left y Top de los formularios antes de mostrarlos, es decir antes de poner Fomulario.Show

Para situar los controles se tomaría como referencia el alto y ancho del form.

Y para determinar posición y tamaño que debe tener el form se tomaría las dimensiones de la pantalla.

(Me parece que esta mañana me levanté inspirado, o al menos con ganas de escribir)

Si quedó alguna dude decime.

Saludos,
Javier