C#winfrom开发一个简单的工作流程图设计器

在网上找了很多的例子,都不能直接满足自己的需求,所以自己利用下班时间,自己研究了一个工作流程图自定义设计的流程。
先上图图片


初始的画图连线已经实现。
左侧栏直接用的Button按钮,点击按钮 自动添加到右侧pictureBox1容器内

                Button bt = new Button();
                bt.AutoSize = false;
                //TODO:如需动态生成每个标签元素位置,请根据实际情况,初始化标签的Location即可。此处默认X=150,Y 以75间隔递增
                bt.Location = new Point(20, iPosition);
                iPosition = iPosition + 60;
                bt.Size = new Size(89, 36);
                //bt.BackColor = Color.DarkOliveGreen;
                bt.ForeColor = bt_ForeColor;
                //bt.FlatStyle = FlatStyle.Flat;
                //bt.TextAlign = ContentAlignment.MiddleCenter;
                bt.Text = btText;
                bt.Name = bt_Name;
                //TODO;可以绑定标签元素的右键事件
                //label.ContextMenuStrip = contextBlock;
                pictureBox1.Controls.Add(bt);
                //拖拽移动
                MoveBlock(bt);
                bt.ContextMenuStrip = this.contextMenuStrip1;
                bt.Click += new System.EventHandler(bt_click);
                huoqu_kongjian();

 

添加的控件在容器被拖动,这个大代码很多,就不直接举例了。
关于控件与控件之间连线用到的事GDI+画图

 

箭头跟随移动则是 在鼠标拖动的时候进行重绘实现。

posted @ 2021-08-16 15:19  程序员一诺  阅读(3129)  评论(7编辑  收藏  举报