0% encontró este documento útil (0 votos)
118 vistas3 páginas

Modificar Escala Formulario

Este documento explica cómo modificar la escala de un formulario en Access para que se ajuste al tamaño de la pantalla. Se importan dos módulos, se establecen propiedades para el formulario como "Ajustar a la pantalla: NO", y se agrega código a los eventos "Al abrir" y "Al cambiar el tamaño" para redimensionar los controles cuando se cambie el tamaño del formulario. El documento también advierte sobre posibles problemas y da consejos como hacer una copia de seguridad antes de aplicar el código.

Cargado por

Jalumi Mel
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
118 vistas3 páginas

Modificar Escala Formulario

Este documento explica cómo modificar la escala de un formulario en Access para que se ajuste al tamaño de la pantalla. Se importan dos módulos, se establecen propiedades para el formulario como "Ajustar a la pantalla: NO", y se agrega código a los eventos "Al abrir" y "Al cambiar el tamaño" para redimensionar los controles cuando se cambie el tamaño del formulario. El documento también advierte sobre posibles problemas y da consejos como hacer una copia de seguridad antes de aplicar el código.

Cargado por

Jalumi Mel
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3

MODIFICAR LA ESCALA DE UN FORMULARIO1

En este ejemplo os explicaré cómo podemos modificar la


escala de un formulario. Pero, ante todo, quisiera agradecer
el código de Markus Gruber, sin el cual este ejemplo no
sería posible. Debo decir que yo no he realizado ningún tipo
de modificación sobre el mismo.

Este ejemplo, además, está “fuera” de los objetivos de la web, por


lo que era un poco reacio a colgarlo. Sin embargo, las consultas
relacionadas con este tema son tantas que finalmente me he
inclinado por prepararlo y ponerlo a vuestra disposición.

Dicho esto os advierto que vamos a necesitar un módulo de clase más un módulo estándar.

Para no tener que escribir todo el código en este artículo se hace necesario bajarse la BD de
ejemplo (aquí). Por consiguiente, el ejemplo empieza dando por supuesto que os habéis
bajado esta base de datos de ejemplo, llamada “ModificarEscalaFormulario.mdb”. Así pues, os
explicaré cómo importar los módulos en vuestra BD y cómo programar el formulario en
cuestión a partir de esta situación inicial.

Antes de lanzaros a aplicar este ejemplo sobre vuestras BD's por favor leed el final de este
ejemplo, donde hay un apartado con notas ¡MUY IMPORTANTES!

Vamos allá:

1.- Creamos un formulario en blanco, y lo situamos en vista diseño. Lo guardamos como


“FPrueba”. Es el formulario que me servirá para explicaros la aplicación al formulario. En él
creamos algunos elementos... Por ejemplo, un botón de comando, una etiqueta, un cuadro de
texto y un cuadro combinado (no tiene mayor importancia lo que creemos pues sólo va a
servir para ver el efecto del redimensionamiento). Cerramos el formulario y la volveremos a él
más tarde.

2.- Abrimos nuestra BD. Si tenemos Access 2007 nos vamos a menú->Datos Externos y en el
grupo de opciones “Importar” clickamos sobre el botón de “Access”.

Para usuarios de Windows 2003 nos situamos cualquier espacio “en blanco” de la ventana Base
de Datos y hacemos click con el botón de la derecha. En el menú emergente que nos aparece
seleccionamos la opción “Importar...”

3.- Access 2007: navegamos hasta encontrar la BD “ModificarEscalaFormulario.mdb” y la


“abrimos”. Dado que nos interesa importar módulos dejamos la opción por defecto que nos
aparece en la ventana “Obtener datos externos”, que es “Importar tablas, consultas,
formularios...”. Aceptamos.

Access 2003: navegamos hasta encontrar la BD “ModificarEscalaFormulario.mdb” y la


“abrimos”. Nos vamos a la pestaña Módulos y seleccionamos los dos módulos que nos
aparecen (clFormWindow y modScaleForm). Aceptamos. Podemos pasar al punto 5.

4.- Access 2007: en la ventana que nos aparece nos vamos a la pestaña Módulos y
seleccionamos los dos módulos que nos aparecen (clFormWindow y modScaleForm).
Aceptamos. Cerramos la siguiente pantalla que nos aparece sin guardar los pasos de
importación.

1 La BD de ejemplo os la podéis bajar aquí.

1
Visítame en http://bit.ly/NckAccess
5.- Con esto ya nos deberían aparecer, en nuestra BD, los dos módulos anteriores (con iconos
diferentes, pues uno es un módulo de clase y otro es un módulo estándar).

6.- Abrimos nuestro formulario “FPrueba” en vista diseño y


sacamos sus propiedades. Nos vamos a la pestaña Formato
y cambiamos las siguientes propiedades:

• Ajustar a la pantalla: NO

Aquí tenemos un pequeño “problemilla técnico”, puesto que


en Access 2007 la opción predeterminada para ver los
formularios es “Documentos con fichas”, mientras que
Access 2003 muestra los formularios con el sistema
“Ventanas superpuestas”. Si bien en vuestra BD no hace
falta que sigáis el siguiente paso, para este ejemplo, si
usamos la versión 2007, sí debemos realizarlo. Con Access
2003 podemos pasar al punto 8.

7.- Nos vamos a la pestaña Otras->Emergente, y le situamos el valor de la propiedad en SÍ.

8.- Nos vamos a la pestaña Eventos y en el evento “Al abrir” le generamos el siguiente código:

...
Private Sub Form_Open(Cancel As Integer)
ScaleFormWindow Me
End Sub

9.- Ahora nos situamos en el evento “Al cambiar el tamaño”, y le generamos el siguiente
código:


Private Sub Form_Resize()
ScaleFormControls Me
End Sub

Y ya tenemos nuestro formulario preparado para “adaptarse” a la resolución que queramos. Si


ahora situamos FPrueba en vista Formulario y lo redimensionamos veremos como los
elementos del formulario se ajustan a “nuestros deseos”.

¡MUY IMPORTANTE!
✗ El formulario se adapta a la resolución de la pantalla. Ello puede implicar que nos llevemos
alguna sorpresa cuando veamos el tamaño inicial con que se carga. Una posible solución a lo
anterior pasaría por abrir siempre maximizado el formulario. Para ello debemos sacar las
propiedades del formulario Pestaña → Eventos → Al cargar, y generar el siguiente código:


Private Sub Form_Load()
DoCmd.Maximize
End Sub

Debemos tener en cuenta que, a efectos prácticos, el formulario debe estar lo más acabado

2
Visítame en http://bit.ly/NckAccess
que podamos. Existe la posibilidad de que si añadimos nuevos elementos al formulario dé la
sensación de que “algo no funciona bien” al redimensionarlo. En este caso tendremos que o
bien compactar la BD o bien cerrarla y volverla abrir.

✗ Si trabajamos en Access 2007, con el sistema de


“Documentos con fichas”, y aplicamos lo explicado en este
ejemplo, el objetivo que conseguiríamos sería que al llevar
nuestra BD a otro ordenador con una resolución diferente
nuestro formulario se adaptaría a esa nueva resolución.

✗ Podemos tener conflictos de diseño si, una vez hecho nuestro


formulario y generados los códigos, aplicamos, en vista
presentación, un estilo a través del autoformato.

✗ Mi consejo final: haced una copia del formulario y guardadlo con otro nombre. Si hay
problemas siempre podremos recuperarlo. Y si vamos a aplicar el código a todos los
formularios no estaría de más tener una copia de seguridad de la base de datos antes de
aplicar ningún código. Siempre podremos recuperar los formularios a través de la importación,
cuya mecánica hemos visto al principio de este ejemplo.

Y eso es todo. Espero que podáis aprovechar algo de este ejemplo.

Un saludo.

3
Visítame en http://bit.ly/NckAccess

También podría gustarte