■ AddFlow 클래스를 사용해 다이어그램을 생성한다. (속성 사용)
▶ MainForm.cs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
using System.Drawing; using System.Windows.Forms; using Lassalle.Flow; namespace TestProject { /// <summary> /// 메인 폼 /// </summary> public partial class MainForm : Form { //////////////////////////////////////////////////////////////////////////////////////////////////// Constructor ////////////////////////////////////////////////////////////////////////////////////////// Public #region 생성자 - MainForm() /// <summary> /// 생성자 /// </summary> public MainForm() { InitializeComponent(); CreateDiagram(this.addFlow); } #endregion //////////////////////////////////////////////////////////////////////////////////////////////////// Method ////////////////////////////////////////////////////////////////////////////////////////// Private #region 다이어그램 생성하기 - CreateDiagram(addFlow) /// <summary> /// 다이어그램 생성하기 /// </summary> /// <param name="addFlow">AddFlow</param> private void CreateDiagram(AddFlow addFlow) { // 그림자를 갖는 3개 노랑색 노드들을 생성한다. // 두번째 노드는 사각형이고 // 세번째 노드는 Document 도형 스타일이다. Node node1 = new Node(50, 50, 80, 80, "첫번째 노드", addFlow); node1.FillColor = Color.LightYellow; node1.ShadowStyle = ShadowStyle.RightBottom; Node node2 = new Node(280, 160, 100, 80, "두번째 노드", addFlow); node2.FillColor = Color.LightYellow; node2.ShadowStyle = ShadowStyle.RightBottom; node2.ShapeFamily = ShapeFamily.Rectangle; Node node3 = new Node(50, 210, 80, 80, "세번째 노드", addFlow); node3.FillColor = Color.LightYellow; node3.ShadowStyle = ShadowStyle.RightBottom; node3.ShapeFamily = ShapeFamily.Rectangle; node3.GraphicsPath = PredefinedGeometry.GetNodePath(NodeShapeStyle.Document, ShapeOrientation.Degree0); // 3개 링크들을 생성한다. // 각 링크는 파랑색이고 BackMode 속성은 Opaque이다. // 두번째 링크는 베지어 스타일, 텍스트 색상은 빨강색이고, 목적지 화살표 각도는 30도 이다. // 세번째 링크는 HVH 스타일이다. Link link1 = new Link(node1, node2, "링크 1", addFlow); link1.DrawColor = Color.Blue; link1.BackMode = BackMode.Opaque; Link link2 = new Link(node2, node2, "링크 2", addFlow); link2.DrawColor = Color.Blue; link2.BackMode = BackMode.Opaque; link2.LineStyle = LineStyle.Bezier; link2.TextColor = Color.Red; link2.ArrowDst = PredefinedGeometry.GetLinkArrowStylePath(LinkArrowStyle.Arrow, 10, 14); Link link3 = new Link(node2, node3, "링크 3", addFlow); link3.DrawColor = Color.Blue; link3.BackMode = BackMode.Opaque; link3.LineStyle = LineStyle.Orthogonal; // 1개 캡션을 생성한다. Caption caption = new Caption(200, 30, 220, 30, "노드와 링크 속성들", null, addFlow); caption.TextColor = Color.Blue; caption.DrawColor = Color.Transparent; caption.Font = new Font("Calibri", 14); // 노드들과 링크들 및 캡션을 다이어그램에 추가한다. addFlow.AddNode(node1); addFlow.AddNode(node2); addFlow.AddNode(node3); addFlow.AddLink(link1); addFlow.AddLink(link2); addFlow.AddLink(link3); addFlow.AddCaption(caption); } #endregion } } |