2.1. El Formulario Inicial.

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).

Figura 6

Como podemos comprobar, en la ventana del explorador de proyectos aparecen dos proyectos predefinidos: el Proyecto de Aplicación y el Proyecto de Documento. En este proyecto de documento insertaremos un nuevo formulario de usuario (UserForm), tal como se muestra en la Figura 6. Mediante la ventana Propiedades (Figura 7) cambiamos el nombre predefinido por el de frmParams.
                     Figura 7. Figura 8.                   

Diseño del Formulario:

Se insertarán en el formulario cuatro controles Cuadro de Texto (TextBox), cuatro controles Etiqueta (Label) y dos Botones de Comando (CommandButton) según la disposición que se muestra en la Figura 8. Se modificará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 reflejen los valores actuales de esos parámetros al mostrarse el formulario. Para ello debemos incluir el código necesario en un procedimiento que se ejecute al solicitar que se muestre el formulario. Este código se debe incluir en el procedimiento Initialize del UserForm. Posteriormente incluiremos el código necesario para que al cambiar estos valores se cambien los parámetros.

Figura 9

Procedimiento para obtener los valores de los Parámetros.

  1. Obtener la colección PartComponentDefinition, propiedad del PartDocument.
  2. Obtener la colección Parameters que es una propiedad de PartComponentDefinition. (ver Figura 10).
  3. Recorrer la colección Parameters, comprobando para cada uno de ellos si su propiedad Name coincide con alguno de los parámetros que nos interesan. En caso de que así sea, se asigna el contenido de su propiedad Value a la propiedad Value del cuadro de texto correspondiente a ese parámetro. El resultado se muestra en la Figura 11.
Figura 10. Figura 11.

Observe que los valores aparecen en centímetros, aunque en la interfaz de usuario de Inventor los datos aparecen 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 los objetos Parameters (colección de parámetros) y Parameter (parámetro) se declaran como globales para el formulario de manera que puedan ser utilizados por otros procedimientos.

Figura 12. Código para inicializar el formulario.

Procedimiento para aplicar los cambios a los Parámetros.

Hemos incluido dos botones de comando, cmdAplicar y cmdCancelar. Para ambos botones se deberá definir el procedimiento que se ejecutará a consecuencia del evento Click que se produce al pulsar el botón izquierdo del 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 invocar el método Unload al formulario (representado por la variable global Me). El código correspondiente al evento Click del botón cmdCancelar se muestra en la Figura 13.

Figura 13. Código para el evento Click del botón cmdCancelar.

El botón cmdAplicar provocará la actualización de los Parámetros. Para ello se procede como sigue:

  1. Leer la propiedad Value de cada control Cuadro de Texto.
  2. Aplicar cada uno de estos valores a la propiedad correspondiente de la parte.
  3. Una vez modificadas las propiedades, aplicar el método Update del Documento para actualizar la presentación en pantalla.
  4. 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.

Figura 14. Código para el evento Click del botón cmdAplicar.

Creación de la Macro.

Para invocar este formulario se deberá crear una Macro, es decir un procedimiento público que no reciba argumentos. Su código se guardará en el Módulo1 y en su forma más simple se limitará a invocar el método Show del formulario. La Figura 15 muestra el código para esta Macro.

Figura 15. Macro para abrir el formulario.

Algunos resultados de la aplicación de esta macro se muestran en las siguientes figuras.

Figura 16. Resultado de la modificación de Parámetros.

Para Continuar.

 Esta macro puede mejorarse:

  1. Introduciendo una imagen que muestre la geometría a la que se aplican los distintos parámetros.
  2.  Comprobando los datos para evitar los errores a que daría lugar una incoherencia en los valores asignados por el usuario.
  3. Mostrando mensajes que indiquen al usuario si ha cometido errores y cuáles son estos.
  4. Estableciendo opciones predeterminadas (bordes sin redondeo, pieza sin agujero central, etc.).
  5. Mostrando de manera automática el cuadro de modificación de parámetros al abrir el dibujo.
  6. 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.

ċ
Pieza1.ipt
(245k)
Reinaldo Togores Fernández,
25 feb 2011, 12:27
Comments