一个简单的WEB流程图组件[demo]
2008-07-07 23:10
453 查看
我们常常要在web上显示流程图,网上比较难找,到处要收费,自己琢磨了一个,
比较简单,包括开始节点,结束结点,两种节点框图(节点、容器)和两种特殊线(跳线、返回线),
使用xml文件或xml字串作为数据源,
没有多少需求分析,给有心人参考,也收集一些建议,源码过段时间整理再放上。
demo代码
效果图如下:
<?xml version="1.0" encoding="utf-8" ?>
<root>
<Attributes>
<Width>120</Width>--节点宽度
<Height>60</Height>--节点高度
</Attributes>
<TaskNodes>
<Task>
<TaskType>Start</TaskType>--开始节点
<TaskCode>Start</TaskCode>--代码
<TaskStatus>Completed</TaskStatus>--是否完成
</Task>
<Task>
<TaskType>Normal</TaskType>--单节点
<TaskCode>OpenForm</TaskCode>
<Title>
<TitleLine>開單</TitleLine>--节点文字第一行
<TitleLine>劉XX</TitleLine>--节点文字第二行
</Title>
<TaskStatus>Completed</TaskStatus>
</Task>
<Task>
<TaskType>Normal</TaskType>
<TaskCode>GroupApprove</TaskCode>
<Title>
<TitleLine>組級審覈</TitleLine>
<TitleLine>王XX</TitleLine>
</Title>
<TaskStatus>Completed</TaskStatus>
</Task>
<Task>
<TaskType>Normal</TaskType>
<TaskCode>SectionApprove</TaskCode>
<Title>
<TitleLine>劉級審覈</TitleLine>
<TitleLine>劉XX</TitleLine>
</Title>
<TaskStatus>Completed</TaskStatus>
</Task>
<Task>
<TaskType>MulApprove</TaskType>--复合结点
<TaskCode>ManageApprove</TaskCode>
<Task>
<TaskType>Normal</TaskType>
<TaskCode>ManageApprove0</TaskCode>
<Title>
<TitleLine>理級審覈</TitleLine>
<TitleLine>趙XX</TitleLine>
</Title>
<TaskStatus>False</TaskStatus>
</Task>
<Task>
<TaskType>Normal</TaskType>
<TaskCode>ManageApprove1</TaskCode>
<Title>
<TitleLine>理級審覈</TitleLine>
<TitleLine>吳XX</TitleLine>
</Title>
<TaskStatus>Completed</TaskStatus>
</Task>
<Task>
<TaskType>Normal</TaskType>
<TaskCode>ManageApprove2</TaskCode>
<Title>
<TitleLine>理級審覈</TitleLine>
<TitleLine>湯XX</TitleLine>
</Title>
<TaskStatus>False</TaskStatus>
</Task>
</Task>
<Task>
<TaskType>End</TaskType>
<TaskCode>End</TaskCode>
<TaskStatus>Completed</TaskStatus>
</Task>
</TaskNodes>
<Lines>
<Line>
<LineType>Back</LineType>--返回线
<LineStart>GroupApprove</LineStart>--起始节点
<LineEnd>OpenForm</LineEnd>--结束节点
</Line>
<Line>
<LineType>Back</LineType>
<LineStart>SectionApprove</LineStart>
<LineEnd>OpenForm</LineEnd>
</Line>
<Line>
<LineType>Back</LineType>
<LineStart>ManageApprove</LineStart>
<LineEnd>OpenForm</LineEnd>
</Line>
<Line>
<LineType>Break</LineType>--跳线
<LineStart>OpenForm</LineStart>
<LineEnd>SectionApprove</LineEnd>
</Line>
<Line>
<LineType>Break</LineType>
<LineStart>GroupApprove</LineStart>
<LineEnd>ManageApprove</LineEnd>
</Line>
</Lines>
</root>
链接处理:
Dictionary<string, string> dicMap = DrawCommon.GetMapXmlString(x, y, w, h, sbXmlString.ToString());
foreach (string TaskCode in dicMap.Keys)
sbMap.Append("</map>");
divMap.InnerHtml = sbMap.ToString();
比较简单,包括开始节点,结束结点,两种节点框图(节点、容器)和两种特殊线(跳线、返回线),
使用xml文件或xml字串作为数据源,
没有多少需求分析,给有心人参考,也收集一些建议,源码过段时间整理再放上。
demo代码
效果图如下:
<?xml version="1.0" encoding="utf-8" ?>
<root>
<Attributes>
<Width>120</Width>--节点宽度
<Height>60</Height>--节点高度
</Attributes>
<TaskNodes>
<Task>
<TaskType>Start</TaskType>--开始节点
<TaskCode>Start</TaskCode>--代码
<TaskStatus>Completed</TaskStatus>--是否完成
</Task>
<Task>
<TaskType>Normal</TaskType>--单节点
<TaskCode>OpenForm</TaskCode>
<Title>
<TitleLine>開單</TitleLine>--节点文字第一行
<TitleLine>劉XX</TitleLine>--节点文字第二行
</Title>
<TaskStatus>Completed</TaskStatus>
</Task>
<Task>
<TaskType>Normal</TaskType>
<TaskCode>GroupApprove</TaskCode>
<Title>
<TitleLine>組級審覈</TitleLine>
<TitleLine>王XX</TitleLine>
</Title>
<TaskStatus>Completed</TaskStatus>
</Task>
<Task>
<TaskType>Normal</TaskType>
<TaskCode>SectionApprove</TaskCode>
<Title>
<TitleLine>劉級審覈</TitleLine>
<TitleLine>劉XX</TitleLine>
</Title>
<TaskStatus>Completed</TaskStatus>
</Task>
<Task>
<TaskType>MulApprove</TaskType>--复合结点
<TaskCode>ManageApprove</TaskCode>
<Task>
<TaskType>Normal</TaskType>
<TaskCode>ManageApprove0</TaskCode>
<Title>
<TitleLine>理級審覈</TitleLine>
<TitleLine>趙XX</TitleLine>
</Title>
<TaskStatus>False</TaskStatus>
</Task>
<Task>
<TaskType>Normal</TaskType>
<TaskCode>ManageApprove1</TaskCode>
<Title>
<TitleLine>理級審覈</TitleLine>
<TitleLine>吳XX</TitleLine>
</Title>
<TaskStatus>Completed</TaskStatus>
</Task>
<Task>
<TaskType>Normal</TaskType>
<TaskCode>ManageApprove2</TaskCode>
<Title>
<TitleLine>理級審覈</TitleLine>
<TitleLine>湯XX</TitleLine>
</Title>
<TaskStatus>False</TaskStatus>
</Task>
</Task>
<Task>
<TaskType>End</TaskType>
<TaskCode>End</TaskCode>
<TaskStatus>Completed</TaskStatus>
</Task>
</TaskNodes>
<Lines>
<Line>
<LineType>Back</LineType>--返回线
<LineStart>GroupApprove</LineStart>--起始节点
<LineEnd>OpenForm</LineEnd>--结束节点
</Line>
<Line>
<LineType>Back</LineType>
<LineStart>SectionApprove</LineStart>
<LineEnd>OpenForm</LineEnd>
</Line>
<Line>
<LineType>Back</LineType>
<LineStart>ManageApprove</LineStart>
<LineEnd>OpenForm</LineEnd>
</Line>
<Line>
<LineType>Break</LineType>--跳线
<LineStart>OpenForm</LineStart>
<LineEnd>SectionApprove</LineEnd>
</Line>
<Line>
<LineType>Break</LineType>
<LineStart>GroupApprove</LineStart>
<LineEnd>ManageApprove</LineEnd>
</Line>
</Lines>
</root>
链接处理:
Dictionary<string, string> dicMap = DrawCommon.GetMapXmlString(x, y, w, h, sbXmlString.ToString());
foreach (string TaskCode in dicMap.Keys)
sbMap.Append("</map>");
divMap.InnerHtml = sbMap.ToString();
相关文章推荐
- 一个简单的WEB流程图组件
- webpack 打包一个简单react组件
- webpack 打包一个简单react组件
- 【demo】使用React+Webpackt做一个简单的todolist
- 学习 webpack,并构建一个超简单的 demo
- MySoft组件之MySoft.Web一个简单示例
- Applet 实现一个简单的web流程图或拓扑图绘制功能
- 如何使用一个不错的图表组件WebChart(免费)
- 【demo】React+Webpackt做一个微博发送表单
- 【Java.Web】创建一个简单的Java Web项目
- 一个基于ES6+webpack的vue小demo
- Dubbo入门---搭建一个最简单的Demo框架
- web_custom_request的一个简单实战
- python web py入门-2-显示一个demo网页
- Java实现一个简单的Web服务器
- [shiro学习笔记]第二节 shiro与web融合实现一个简单的授权认证
- J2EE实践第一部分-创建一个简单的JSF Web程序(简单网页计算器)
- 一个用于图像标注的简单Web程序
- 使用mvc的一个简单的web布局
- Java SecurityManager的一个简单Demo