FoxPro/Visual FoxPro - tamaño de formulario

   
Vista:

tamaño de formulario

Publicado por MANY (84 intervenciones) el 20/05/2014 04:00:51
Saludo a todos:

quisiera saber como hacen para que un formulario corra en cualquier resolución ajustándose al tamaño de la pantalla sin problemas.

agradecería su ayuda en este tema

mil gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

tamaño de formulario

Publicado por Fidel José (558 intervenciones) el 20/05/2014 15:34:49
"ajustándose al tamaño de la pantalla sin problemas". Humm... bueno, ajustándose al tamaño de la pantalla.
Tienes que empezar basando tus formularios en una clase form.
1
2
3
4
5
6
7
8
9
10
11
12
*misClases.vcx
*<frmbase.init>
Addproperty(this,"design_Height",600)  * Estas propiedades se agregan al frm de base ya con sus valores.
addproperty(this,"design_width",800)    * que corresponden al modo de diseño que uno emplea.
WITH this
	.Height=CEILING(.Height * _Screen.Height / .design_height )
	.Width=CEILING(.Width * _Screen.Width / .design_width)
       *botón de cierre del form
	.Cmcerrar1.Top=.Height-28
	.cmcerrar1.Left=.Width-28
ENDWITH
*</frmbase.init>
En los formularios, no hay que olvidarse de incluir Dodefault() al final del Init (si tiene código).
Al establecerse un alto o un ancho, se dispara el evento Resize.

Si se permite maximizar el form, hay que prever si puede ser completa o limitada (.Maxheight, .maxwidth). En muchos casos la maximización plena es innecesaria (y horrible). También se necesita prever, si el formulario es ajustable, qué pasa cuando el usuario estira o achica el form.

Si tienes los objetos tambien en la clase "MisClases.vcx", te resultará más fácil estudiar la propiedad Anchor y ajustarla como más te convenga.

A mi, particularmente, no me gusta como funciona Anchor, por lo que controlo el dimensionamiento (ahí donde quiero que se redimensione) con una clase. Tengo que decirle qué objetos se estiran, cuales se mueven, etc. No es sencillo. La clase se ataca desde el evento Resize, generalmente a través de un BindEvent() colocado en el init de la clase.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar