Esta semana vemos un tema muy sencillo de implementar para facilitar el crear HMI con varios formularios usando MDI con Visnap7.
La idea es crear algo similar a lo que es una pantalla creada con WinCC flexible, pero con una aplicación de Windows.
Para ello nos vamos a basar en las herramientas que ofrece Visual Studio como son los formularios MDI (Interfaz Multi Documento)
Básicamente un formulario MDI, si no lo conoces es tener un formulario padre, y dentro de él vas alojando los formularios hijos.
Haciendo un paralelismo con las pantallas de Siemens, cada formulario hijo sería cada una de las imágenes que creas en WinCC Flexible.
Si usas ViSnap7, vas a ver que esta forma de trabajar te va a venir genial.
El formulario padre, o contenedor, va a ser el formulario donde vas a lanzar las comunicaciones y declararás los formularios hijos de tal forma que ya no te tendrás que preocupar de qué formularios abres o cierras, ya que solo habrá un formulario visible, y solo realizarás las llamadas a uno u otro formulario hijo.
Formularios MDI con ViSnap7
Esto es aplicable a cualquier tipo de aplicación MDI.
Solo que nosotros lo vamos a usar con ViSnap7.
Lo mejor, como otras veces, es que lo veamos en un vídeo.
El código tan simple que se usa tras declarar los diferentes formularios es el de aquí abajo.
Ves que es fácil de implementar e incluso, puedes crear una función en la que pases por referencia el formulario y apliques las propiedades en caso de tener unos cuantos formularios en vez de estar copiando y pegando.
formulario1.MdiParent = Me
formulario1.FormBorderStyle = Windows.Forms.FormBorderStyle.None
formulario1.ControlBox = False
formulario1.MaximizeBox = False
formulario1.MinimizeBox = False
formulario1.ShowIcon = False
formulario1.Text = ""
formulario1.Dock = DockStyle.Fill
Como ves, queda bastante bien para crear los formularios de los HMI. Si no son muchas pantallas, como hemos visto, lo puedes crear al principio y mostrarlas. Luego tan solo mandas a primer plano el que desees usar.
¿Qué te ha parecido?.
Espero que si no conocías los formularios MDI, comiences a probarlos, ya que son muy útiles.
Recuerda que tienes el proyecto en https://visnap7.org y en https://guorker.com un pequeño curso sobre ello.
Enseño a programar PLC de Siemens a través de mis cursos.
Más información sobre mi aquí
Puedes seguirme en cualquiera de las siguientes redes sociales.
6 Comentarios
La interface se ve muy elegante, muy bonita. Felicidades Iñigo, siempre innovando, gracias por tu tiempo y tu vida.
Saludos y un abrazo
Muchas gracias!
Hola Iñigo, ¿cuando vas a poner otros retos?…
https://youtu.be/bd01QWUKRwM
Quiero mostrarte este vídeo, es el resultado de tu idea.
Saludos.
Iñigo, puedes hacer conexión con Base de Datos, guardando valores de una Variable y después recuperar esos valores seleccionando la fecha de hace un mes, por ejemplo?
Complemento muy interesante para tu curso HMI con Snap7 & VB.Net.
Siempre con temas de mucha ayuda, muy bien trabajados.
Gracias.
Gracias Pedro.
Haré algún ejemplo más.