Emilio | Consultor SEO
  • Inicio
  • Autor
  • Consultor SEO
  • Licencia
  • Contactar
  • RSS
Sígueme en Twitter

Visual Basic .NET aplicación MDI

Visual Basic .NET, junio, 04 2009 | 6 Comentarios

Es un formulario padre, un formulario contenedor de otros, los otros se abrirán dentro de él (del padre)

Hacer un office con varios documentos

Veamos un ejemplo de cómo crear una aplicación parecida al microsoft office Word en la que podamos crear diferentes archivos de texto, modificarlos y guardarlos.

Para crear nuestra aplicación, cogemos cualquier formulario y ponemos la propiedad isMdiContainer a true, ese será nuestro formulario base.

Si queremos hacer un documento parecido al de Word, creamos otro formulario, añadimos un RichTextBox y para hacer que ocupe toda la ventana, vamos a su propiedad Dock y seleccionamos la del medio (Fill).

Crear un menú

Si tenemos un menú y queremos hacer una pestaña donde se vean cuantos hijos tenemos, pinchamos en el menú, opción MdiWindowsListItem y seleccionamos ventanaToolStripListItem.

Para cambiar las vistas de las ventanas

Podemos seleccionar diferentes vistas de los documentos abiertos desde el menú de arriba, pero también podemos hacerlo desde nuestro código, os dejo un código de ejemplo.

Private Sub MosaicoHorizontalToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MosaicoHorizontalToolStripMenuItem.Click
Me.LayoutMdi(MdiLayout.TileHorizontal)
End Sub

LayoutMdia es la propiedad que contiene los diferentes tipos de clasificación de ventanas.

Menú para cambiar la fuente

Si queremos que nuestros documentos pueden variar el tamaño de letra o el tipo de fuente, vamos a necesitar el control FontDialog al que llamaremos dlgFuente. Veamos otro ejemplo.

Dim resp As DialogResult

Dim fh As Form2
fh = Me.ActiveMdiChild

If fh IsNot Nothing Then

dlgFuente.Font = fh.RichTextBox1.SelectionFont

resp = dlgFuente.ShowDialog()

If resp = Windows.Forms.DialogResult.OK Then
fh.RichTextBox1.SelectionFont = dlgFuente.Font
'fh.RichTextBox1.Text = "HOLITASSS vecinitooo"
fh.RichTextBox1.SelectionColor = dlgFuente.Color
End If

End If

Menú para guardar

Necesitamos SaveFileDialog, lo llamaremos dlgGuardar

'diferentes opciones para guardar
dlgGuardar.Filter = "Formato de Texto Enriquecido | *.rtf| texto| *.txt"

dlgGuardar.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments
If dlgGuardar.ShowDialog() = Windows.Forms.DialogResult.OK Then
Dim n_arch = dlgGuardar.FileName
Dim fh As Form2
fh = Me.ActiveMdiChild

fh.RichTextBox1.SaveFile(n_arch)
End If
End Sub

Menú abrir

necesitamos OpenFileDialog, lo llamaremos dlgAbrir

dlgAbrir.Filter = "Formato de Texto Enriquecido | *.rtf| texto| *.txt"
Dim fh As New Form2
fh.MdiParent = Me

dlgAbrir.ShowDialog()

Dim n_arch = dlgAbrir.FileName

fh.RichTextBox1.LoadFile(n_arch)
fh.Show()

Artículos relacionados

  • Visual Basic .NET controles de formularios
  • Visual Basic .NET controles
  • Visual Basic .NET parámetros por valor y referencia
  • Visual Basic .NET variables y constantes
  • Visual Basic .NET Messagebox
  • Visual Basic .NET herencia


Comentarios en Visual Basic .NET aplicación MDI

Hay 6 Comentarios en el artículo Visual Basic .NET aplicación MDI, ¿a qué esperas para dar tu opinión?


  1. Pedro dice:
    septiembre 16, 2009 a las 6:53 pm

    La verdad que estos codigos me fueron de mucha utilidad, te felicito Emilio por este gran trabajo que desempeñas en tu pagina.
    Atte. Pedro

    Responder
    • Emilio dice:
      septiembre 17, 2009 a las 7:54 am

      Muchas gracias Pedro, se agradece ;)

      Responder
  2. Tony dice:
    septiembre 23, 2009 a las 8:13 pm

    Como se puede crear un formulario con un menu tipo world 2007 ?

    Responder
    • Daniel dice:
      noviembre 9, 2009 a las 8:02 pm

      para hacer una aplicación con la interfaz de usuario de office 2007 busca en internet ELEGANT RIBBON, Saludos

      Responder
  3. oscarfot dice:
    enero 4, 2010 a las 5:13 pm

    muchas, gracias; como puedo hacer cuando yo hago que mi formulario principal se establesca su propiedad ismdicontainer en true, cuando yo inserto una imagen y cuando hago un evento para que salga el formulario hijo aparesca siempre adelante

    Responder
    • Henry Díaz dice:
      octubre 9, 2011 a las 10:08 pm

      Cuando llames al formulario hijo haz lo siguiente:

      ‘ Le decimos al formulario hijo que sera hijo del formulario que lo esta llamando.
      frmHijo.MdiParent = Me

      ‘ Lo mostramos al usuario.
      frmHijo.Show

      Si en dado caso no queremos que sea hijo del formulario que lo llama, solo cambianos la parte del “Me” por el nombre del formulario padre que lo contendra.

      Ejemplo:

      frmHijo.MdiParent = frmPadre2
      frmHijo.Show()

      Algo muy importante es que ahi no te funcionan los formularios que se quieren mostrar como modales, por ejemplo si le pones:

      frmHijo.ShowDialog() te daria error si le dices que es hijo de otro.

      Responder

Deja un comentario

Clic para cancelar respuesta.

Tweet


Amigos

  • Marketing en Internet
  • Diseño web
  • Frases
  • Sinplan

Blog de Emilio, © 2006 - 2012 (Consultor SEO/SMM/SEM Freelance)

» Visual Basic .NET aplicación MDI