Aplicaciones Mdi

Páginas: 5 (1205 palabras) Publicado: 20 de julio de 2011
¿Cómo crear aplicaciones MDI?
Crear el proyecto de ejemplo
Creamos un nuevo proyecto, se añade un formulario llamado Form1, le dejamos ese nombre. El form se muestra por defecto, por tanto vamos a la ventana de propiedades (si no está activa, puedes pulsar F4), buscamos la propiedad IsMdiContainer y le asignamos el valor True (por defecto tiene el valor False).
A partir de ahora ya tenemos unformulario MDI principal, y notaremos que es así porque el fondo del formulario cambia de color usando el que tengamos predeterminado en el sistema, normalmente es un fondo gris oscuro.
Para añadir el formulario hijo, el que contendrá cada uno de los documentos, simplemente añádelo desde el menú Proyecto>Agregar Windows Forms, dejamos el nombre que le da por defecto: Form2.
Añadimos untextbox, y asignamos la propiedad MultiLine a True, el tipo de letras lo puedes poner como Courier New, también debes asignar a la propiedad Dock el valor Fill (el botón que hay en el centro de las opciones que te muestra al seleccionar esa propiedad desde la ventana de propiedades).

¿Cómo agregar formularios hijos?
Añadir los menús al formulario MDI principal
Ahora añadimos un menú principal, delCuadro de herramientas seleccionamos MainMenu, y agregamos los siguientes menús:
(entre paréntesis está el nombre del menú)
* &Ficheros (mnuFic)
* &Nuevo (mnuNuevo)
* -
* &Abrir... (mnuAbrir)
* &Guardar como... (mnuGuardarComo)
* -
* &Cerrar ventana (mnuCerrar)
* -
* &Salir (mnuSalir)
* &Ventanas(mnuVentanas) (MdiList = True)
* &Minimizar todas (mnuMinimizar)
Hay que resaltar que en el menú Ventanas debemos asignar un valor True a la propiedad MdiList, con idea de que se muestre una lista de todas las ventanas que tengamos abiertas y podamos acceder fácilmente desde la lista que el propio runtime de .NET rellenará conforme vayamos abriendo o cerrando ventanas.
En losseparadores no he puesto el nombre porque no los usamos en el código, pero yo suelo nombrarlos al estilo de mnuFicSepN donde N es un número que voy incrementando.
 
Mostrar un nuevo formulario hijo
El menú Nuevo lo usaremos para añadir o abrir nuevas ventanas de documentos (Form2), para que un formulario sea un formulario hijo del form principal, tenemos que asignar a la propiedad MdiParent delformulario hijo el formulario que lo contendrá, para Visual Basic lo haremos con:
<formulario>.MdiParent = Me
Para C# lo haremos de esta otra forma:
<formulario>.MdiParent = this;
 
Para poder crear nuevas ventanas debemos crear nuevas instancias del formulario hijo (Form2), esto lo haremos con este código, para VB lo hacemos con:
Dim frm2 As New Form2
Para C# lo hacemos con:
Form2frm2 = new Form2();
 
Después asignamos la propiedad MdiParent y finalmente mostramos el formulario recién creado con frm2.Show().
 
Mostrar el formulario hijo maximizado al crearlo
Si queremos que el formulario recién creado se muestre maximizado o minimizado podemos asignar el valor que queramos a la propiedad WindowState del objeto que acabamos de crear: (para C# añade un ; al final)frm2.WindowState = FormWindowState.Maximized
Esta línea de código la pondremos antes de llamar al método Show.
 
Cerrar el formulario hijo que esté activado
Cuando pulsamos en la opción Cerrar ventana del menú Ficheros, debemos averiguar cual es el formulario que actualmente tiene el foco, esto lo averiguamos usando la propiedad ActiveMdiChild del formulario principal. Debido a que esa propiedades del tipo Form, debemos hacer una conversión al tipo adecuado, en nuestro caso del tipo Form2, al menos si tenemos activado la comprobación estricta, que es como siempre debe estar: Option Strict On, y si eres de los que no suelen tener esa opción conectada... pues si quieres llevarte bien conmigo... debes tener siempre activada esa opción.
Sigamos, en C# no hace falta tener activada la opción...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • mdios
  • mdia
  • Deontologia Mdi
  • 2 Mdio
  • Formularios Mdi
  • Articulo de mdi
  • Mdi
  • MDI

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS