El Proyecto de Documento.
Guardamos el documento de parte en nuestra carpeta de trabajo y abrimos, desde el menú Herramientas > Macro > Editor de Visual Basic o mediante la combinación de teclas Alt+F11, el Entorno de Desarrollo (IDE) de Visual Basic para Aplicaciones (VBA).Diseño del Formulario:
Se insertarán en el formulario cuatro controles Cuadro de Texto (TextBox), cuatro controles Etiqueta (Label) ydos Botones de Comando (CommandButton) según la disposición que se muestra en la Figura 8. Semodificarán las propiedades de los mismos como se indica a continuación:
Etiqueta 1: Name: lblDimX | Caption: DimX | Cuadro de Texto 1: Name: txtDimX | Value: |
Etiqueta 2: Name: lblDimY | Caption: DimY | Cuadro de Texto 2: Name: txtDimY | Value: |
Etiqueta 3: Name: lblAcuerdo | Caption: RadioAcuerdo | Cuadro de Texto 3: Name: txtAcuerdo | Value: |
Etiqueta 4: Name: lblCentro | Caption: RadioCentro | Cuadro de Texto 3: Name: txtCentro | Value: |
Botón de Comando 1: Name: cmdAplicar | Caption: Aplicar | Botón de Comando 2: Name: txtCentro | Caption: Cancelar |
Inicializar el Formulario:
Queremos que los cuatro cuadros de texto reflejenlos valores actuales de esos parámetros al mostrarseel formulario. Para ello debemos incluir el códigonecesario en un procedimiento que se ejecute alsolicitar que se muestre el formulario. Este código sedebe incluir en el procedimiento Initialize delUserForm.Posteriormente incluiremos el código necesario paraque al cambiar estos valores se cambien losparámetros.
Procedimiento para obtener los valores de los Parámetros.
- Obtener la colección PartComponentDefinition, propiedaddel PartDocument.
- Obtener la colección Parameters que es una propiedad dePartComponentDefinition. (ver Figura 10).
- Recorrer la colección Parameters, comprobando para cadauno de ellos si su propiedad Name coincide con alguno delos parámetros que nos interesan. En caso de que asà sea,se asigna el contenido de su propiedad Value a lapropiedad Value del cuadro de texto correspondiente a eseparámetro. El resultado se muestra en la Figura 11.
Observe que los valores aparecen en centÃmetros, aunque en la interfaz de usuario de Inventor los datosaparecen en milÃmetros. Más adelante se resolverá el problema de mostrar los datos en las mismas unidades.El código para el evento Initialize se muestra en la Figura 12. Observe que las variables destinadas a alojar losobjetos Parameters (colección de parámetros) y Parameter (parámetro) se declaran como globales para elformulario de manera que puedan ser utilizados por otros procedimientos.
Procedimiento para aplicar los cambios a los Parámetros.
Hemos incluido dos botones de comando, cmdAplicar y cmdCancelar. Para ambos botones se deberá definirel procedimiento que se ejecutará a consecuencia del evento Click que se produce al pulsar el botón izquierdodel ratón sobre ellos.El botón cmdCancelar cierra el cuadro de diálogo. El código asociado al este botón no hace más que invocarel método Unload al formulario (representado por la variable global Me). El código correspondiente al eventoClick del botón cmdCancelar se muestra en la Figura 13.
El botón cmdAplicar provocará la actualización de los Parámetros. Para ello se procede como sigue:
- Leer la propiedad Value de cada control Cuadro de Texto.
- Aplicar cada uno de estos valores a la propiedad correspondiente de la parte.
- Una vez modificadas las propiedades, aplicar el método Update del Documento para actualizar lapresentación en pantalla.
- Una vez actualizado el documento se cerrará y descargará el formulario empleando el método Unload.
El código para el evento Click del botón cmdAplicar se muestra en la Figura 14.
Creación de la Macro.
Para invocar este formulario se deberá crear una Macro, es decir un procedimiento público que no recibaargumentos. Su código se guardará en el Módulo1 y en su forma más simple se limitará a invocar el métodoShow del formulario. La Figura 15 muestra el código para esta Macro.
Algunos resultados de la aplicación de esta macro se muestran en las siguientes figuras.
Para Continuar.
 Esta macro puede mejorarse:
- Introduciendo una imagen que muestre la geometrÃa a la que se aplican los distintos parámetros.
- Â Comprobando los datos para evitar los errores a que darÃa lugar una incoherencia en los valoresasignados por el usuario.
- Mostrando mensajes que indiquen al usuario si ha cometido errores y cuáles son estos.
- Estableciendo opciones predeterminadas (bordes sin redondeo, pieza sin agujero central, etc.).
- Mostrando de manera automática el cuadro de modificación de parámetros al abrir el dibujo.
- Mostrando las dimensiones en las mismas unidades que el documento (milÃmetros en lugar de centÃmetros).
Las próximas sesiones se dedicarán a introducir algunas estas mejoras.