android canvas 工作流_工作流之流程跟踪图绘制

本文介绍如何使用jsPlumb库在Android环境下通过Canvas绘制流程跟踪图。通过示例代码展示了如何配置jsPlumb,定义连接样式、端点样式,并详细解释了如何创建节点和连接线,最后实现节点的拖放和提示功能。

最近看到其它系统使用jquery.jsPlumb绘制流程图,效果还不错,于是也就动手学做一个!先看效果:

需要引用的js

下以是绘制的js:

$(document).ready(function () {

$.getJSON('WFProcess.ashx?BillCode=&BuDataID=', function (json) {var fillColor = "gray";//jsPlumb.setRenderMode(jsPlumb.VML);

jsPlumb.Defaults.Connector = ["Straight", { curviness: 50}];

jsPlumb.Defaults.DragOptions= { cursor: "pointer", zIndex: 2000};

jsPlumb.Defaults.PaintStyle= { strokeStyle: fillColor, lineWidth: 2};

jsPlumb.Defaults.EndpointStyle= { radius: 4, fillStyle: fillColor };var anchors = [[0.5, 0, 0, -1], [1, 0.5, 1, 0], [0.5, 1, 0, 1], [0, 0.5, -1, 0]];var arrowCommon = { foldback: 0.7, fillStyle: fillColor, width: 14};var aConnection ={

dynamicAnchors: anchors,

overlays: [

["Arrow", { location: 0.7}, arrowCommon]

]

};if (json.total > 0) {

$.each(json.list, function (i, row) {var nodeDiv = document.createElement('div');var nodeId = "window" +row.prcs_id;

$(nodeDiv)

.attr("id", nodeId)

.attr("to", row.to)

.addClass("window" +row.prcs_class)

.css({"left": parseInt(row.left)/2.5, "top": (parseInt(row.top) + 60)/2.5})

.attr("title", row.title)

.html('

' + row.prcs_content + '
');

$("#prcsList").append(nodeDiv);

});//遍历节点并连线

$(".window").each(function () {

toArr= $(this).attr("to").split(",");for (var i intoArr) {if (toArr[i] != "" && $("#window" + toArr[i]).size() > 0 && this.id != "window" +toArr[i]) {

jsPlumb.connect({ source:this.id, target: "window" +toArr[i] }, aConnection);

}

}

});

$("[title]").tooltip();

}

});

});

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值