10
Formulario MDI Los formularios MDI son un tipo de formulario que contiene a otros formularios dentro. Sirve de fondo de la aplicación y facilita la distribución de las ventanas (estas no están regadas por toda la pantalla.) Un proyecto solo puede contener un formulario MDI, pero si todos los formularios MDI secundarios que sean necesarios. Un formulario MDI se denomina padre y los secundarios hijos (Childs). Formulario MDI padre Es el contenedor de los formularios secundarios. Una aplicación solo puede tener un formulario MDI. Solo pueden contender controles Toolbar, Statusbar y PictureBox. No es posible colocar otro control en el formulario MDI. Agregar un formulario MDI padre:

Formulario mdi

Embed Size (px)

Citation preview

Page 1: Formulario mdi

Formulario MDI

Los formularios MDI son un tipo de formulario que contiene a otros formularios dentro. Sirve de fondo de la aplicación y facilita la distribución de las ventanas (estas no están regadas por toda la pantalla.)Un proyecto solo puede contener un formulario MDI, pero si todos los formularios MDI secundarios que sean necesarios. Un formulario MDI se denomina padre y los secundarios hijos (Childs).

Formulario MDI padreEs el contenedor de los formularios secundarios.Una aplicación solo puede tener un formulario MDI.Solo pueden contender controles Toolbar, Statusbar y PictureBox. No es posible colocar otro control en el formulario MDI.Agregar un formulario MDI padre:

Page 2: Formulario mdi

Formularios MDI hijosTodo formulario hijo se encuentra dentro del MDI padre.Cuando se minimiza una ventana hija, su icono aparece en la ventana padre y no en la barra de tareas.

Cuando se maximiza una ventana hija, ocupa toda el área interna del formulario padre.

Agregar un formulario MDI hijo

Los formularios MDI hijos son los formularios normales, con la propiedad MDIChild establecida a True.

Mostrar un formulario hijoEl siguiente procedimiento de evento clic del menú Nuevo muestra un nuevo formulario cada vez que el usuario hace clic en el menú.

1 Private Sub mnuFileNew_Click()

2  Dim frmD As frmDocument

3  Set frmD = New frmDocument4     frmD.Show

5 End Sub

Si bien el código anterior genera nuevos formularios, todos estos son creados con la misma variable. Si queremos referirnos al mismo formulario se usa la palabra reservada Me, que es el alias de los formularios para referirse a si mismos.

Page 3: Formulario mdi

Si queremos referirnos al formulario activo, debemos usar la propiedad ActiveForm.Esta es una propiedad el formulario MDI. Con él es posible referirse a cualquier propiedad, método o evento del formulario hijo activo.

Al igual que los formularios normales, los formularios MDI pueden contener menús. Igual se los crea mediante el editor de menús.Así mismo los formularios hijos pueden contener menús, pero estos aparecerán en la barra de menús del MDI y no en el formulario secundario.

Los formularios MDI, son formularios contenedores, no aceptan la mayoría de los controles, pero entre los que aceptan, son los menús que podes armar con la herramienta de menú Cuando tu proyecto se ejecuta, el MDI se abre y muestra el menú, a manera de escritorio en la PC, todos los demás formularios se abren dentro de este, para lo cual hay que declararlos MDI children (en propiedades) hijos del MDI. Los menú, tienen un nombre para presentar, un nombre para el programa, y ejecutan un comando como un botón de comando, que puede ser ir a un formulario u a otro o salir del programa. 

A su vez, creas submenús (desplazando hacia la derecha) estos te aparecen como opciones del primer ítem que no tiene puntitos adelante, para hacer las líneas separadoras, presenta el guion medio y como nombre para el programa, uno distinto para cada separador como sep1 sep2 etc También en el menú, podes elegir el medio abreviado, (como accionarlo con combinación de teclas).

 Un menú como de Windows quedaría  más o menos asi:Archivo ...Nuevo ......Documento de Oficce ......- ......Documento de texto en blanco ...- ...Abrir ...- 

Page 4: Formulario mdi

...Guardar 

...- 

...Cerrar 

...- 

...Salir 

Creación de un Formulario MDI

Para crear una aplicación MDI se empezará a crear un nuevo proyecto y, se accede a Insert/MDI Form. El nuevo formulario será el formulario padre. Para que un formulario sea un formulario hijo, se deberá cambiar su propiedad MDIChild y establecerla a True.

Cuando se visualizan varios formularios hijos, todos comparten el mismo código, pero cada uno de ellos guarda sus propios datos y reconoce sus propios sucesos. Según ésto, no se podrá utilizar el identificador del formulario para referirse a los controles o a sus propiedades, aunque sí se podrá utilizar la palabra clave Me.

1.- Una vez creada una aplicación ejecutable o EXE Estándar, clic derecho en la venta de proyectos... Agregar // Formulario MDI

 

Visual Basic incorpora una herramienta llamada editor de menúes para poder crearlos

Ejemplo de cómo crear un editor de documentos MDI

Page 5: Formulario mdi

Iniciar un nuevo proyecto Exe, añadir un formulario MDI y dejarlo por defecto con el nombre Mdi Form1. También agregar un formulario y renombrarlo aFrmDocumento

Las opciones que tendrá el editor serán:

1. En el menú Archivo: Abrir, Nuevo, guardar , guardar como y salir2. El menú Edición : Copiar, Cortar, Pegar y seleccionar Todo.

Los menús de cabecera y submenues

Los menúes de cabecera son los menúes principales que contienen otros submenues. Por ejemplo en el menú del internet explorer, el menú archivo es el menú de cabecera o de primer nivel, y las opciones internas de este (abrir, guardar, imprimir, cerrar, etc...) son los submenues que están en un nivel por debajo del menú archivo.

Crear un menú

1. El primer paso es diseñar un buen diagrama que incluya la mayoría de las opciones, para que el usuario las pueda tener a mano también en el menú.

2. Si observas otras aplicaciones, estas respetan el orden y ubicación de sus menues, es decir que si estás creando un programa que tiene opciones para imprimir una hoja, esta se encontrarán en la sección del menú archivo, si tienes opciones de edición del documento como cortar copiar, pegar , seleccionar todo, etc..., las encontrarás en el menú "edición", si deseas crear un formulario "acerca de..", lo ubicarás en el menú ayuda con el "nombre acerca de...". esta forma de diseño y diagramación es fundamental para que el programa sea estándar y aceptado por todos, por llamarlo de alguna manera, ya que si bien nosotros recordamos el nombre y donde se encuentra ubicada cada opción, un usuario o tercero debe resultarle lo mas sencillo posible el acceso a las opciones del mismo.

Agregar elementos en un menú

El siguiente ejemplo consiste en un formulario que contiene solo un control label que nos mostrará una leyenda con el texto del menú que seleccionamos o presionamos.

Page 6: Formulario mdi

El menú estará compuesto por 3 menues de cabecera, el primero llamado "Archivo", el segundo "Edición" y el último "Ayuda". A su vez cada menú tendrá los siguientes submenues:

1. Archivo : Este menú contendrá los submenues " Abrir ", " Guardar ", " Imprimir " y " Cerrar "

2. Edición: Contendrá los submenues " Cortar ", " Copiar ", " Pegar ", " Seleccionar todo "

3. Ayuda : Tendrá los submenues " Ayuda " y " Acerca de.. "

Los nombres de los menues deberán ser los siguientes:

Menú Archivo:

1. Abrir: mnuAbrir2. Nuevo: mnuNuevo3. Guardar: mnuGuardar4. Guardar Como: mnuGuardarComo5. Salir: mnuSalir

Ya hemos creado el formulario MDI, ahora agreguemos el Menú, para hacerlo clic derecho en el interior del formulario MDI y escoger la opción Editor de menús.

Para ello vamos a tomar en cuenta los pasos que se debe seguir para crear un menú de opciones dentro de un formulario MDI tal y como se detalla a continuación:

En la ventana MDI que aparecerá, haz clic derecho con el mouse y haz clic en editor de menus a continuación empieza a crear los menús de la siguiente forma...

Page 7: Formulario mdi

Si deseas ubicar el nombre Raíz deberás poner en caption el Nombre del grupo, en este caso yo use Programa (por que en este grupo estarán todas las opciones para controlar el programa en forma general, ejemplo Cerrarlo) luego en el campo NAME tienes que poner el nombre del control (este nombre no se mostrara pero servirá para que visual basic pueda reconocer al menú como un elemento independiente y por tal motivo tiene que ser diferente del resto que vayas a poner) En el nombre o NAME tienes que utilizar las siguientes abreviaturas, para un nombre RAIZ o Grupo usas "Mn" (Menu) y para una opción que ira dentro de ese grupo usas la abreviatura "Opc" (Opción) ahora para asignar una opcion basta con presionar la Flecha que señala hacia la Derecha (->) y listo veras que es muy sencillo crear menus en VB6.

Page 8: Formulario mdi

Para comenzar la codificación de cada Menú basta con hacerle clic encima y aplicar el código respectivo. Como puedes ver en la siguiente imagen, hice clic al Menu programas luego a la opción Cerrar y se abrió la ventana de código. Para cerrar el programa el código es simplemente poner la palabra END.

PRACTICA:

Ejercicio práctico demostrativo creando menús.