Principales respuestas
Diagramas de flujo

Pregunta
-
Hola a todos.
Tengo que desarrollar una especie de diagrama de flujo. Este diagrama lo tengo que realizar de forma gráfica y en principio se debe de dibujar a partir de unos datos que determinan el diagrama, aunque más tarde se deberá de ampiar permitiendo poder definirlo. El caso es que debo realizar una diagrama de flujo representando con cajas y flechas diferentes estados y transiciones. De cada caja puede salir más de una flecha a otra caja. Aunque me enrrolle y no me salga es un diagrama de flujo normal.
¿Podeis ayudarme a realizarlo? No se si deberia empezar a pintarlo en un form, como unir las flechas de un estado a otro, etc.... ¿Conoceis de alguna libreria que realice esta parte gráfica?
Un saludo.
Gracias.
Respuestas
-
También existen algunas opciones gratuitas. Puedes echarles un vistazo por si te encajan:
nshape .NET diagramming framework for industrial applications
Microsoft Automatic Graph Layout
Píldoras .NET
Artículos, tutoriales y ejemplos de código .NETPíldoras JS
Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ...- Propuesto como respuesta Karen MalagónModerator jueves, 24 de septiembre de 2015 22:26
- Marcado como respuesta Karen MalagónModerator miércoles, 30 de septiembre de 2015 22:28
Todas las respuestas
-
Sí que te recomendaría utilizar controles de terceros en lugar de tratar de dibujarlos tu mismo, más aún si en un futuro quieres añadir funcionalidad para que el usuario pueda diseñarse sus propios diagramas.
Puedes echarle un vistazo a:
Píldoras .NET
Artículos, tutoriales y ejemplos de código .NETPíldoras JS
Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ... -
A diferencia de lo que dice Asier, yo en cambio sí que me decidiría a pintar el diagrama yo mismo en lugar de usar una librería de terceros. Si manejas GDI+ (espacio de nombres System.Drawing), es relativamente sencillo.
Simplemente, mantén una estructura en memoria que contenga una lista de los rectángulos a dibujar y de las líneas entre ellos.
A continuación, implementa el evento Paint del contenedor en el que vayas a realizar el dibujo. Puede ser un PictureBox para pintar en pantalla, y puede ser un PrintDocument para salir a impresora. Los dos pueden llamar a la misma subrutina y así puedes mostrar el gráfico en pantalla o imprimirlo.
Dentro del Paint, usa funciones de GDI+ para pintar el diagrama a partir de la variable que contiene los datos que lo definen. Para los rectángulos, usa DrawRectangle. Puedes etiquetarlos llamando a DrawString. Las flechas las pintas mediante DrawLine, y si necesitas una punta de flecha puedes hacer dos llamadas a DrawLine que pinten dos segmentos pequeñitos para formar la punta.
En total, no debería llevar demasiado código, siempre que no necesites muchas maravillas en el diagrama.
- Propuesto como respuesta Karen MalagónModerator miércoles, 23 de septiembre de 2015 20:52
-
-
-
También existen algunas opciones gratuitas. Puedes echarles un vistazo por si te encajan:
nshape .NET diagramming framework for industrial applications
Microsoft Automatic Graph Layout
Píldoras .NET
Artículos, tutoriales y ejemplos de código .NETPíldoras JS
Artículos, tutoriales y ejemplos de código JavaScript, HTML5, CSS3, ...- Propuesto como respuesta Karen MalagónModerator jueves, 24 de septiembre de 2015 22:26
- Marcado como respuesta Karen MalagónModerator miércoles, 30 de septiembre de 2015 22:28
-