<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    TWaver - 專(zhuān)注UI技術(shù)

    http://twaver.servasoft.com/
    posts - 171, comments - 191, trackbacks - 0, articles - 2
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    用TWaver做業(yè)務(wù)流程管理

    Posted on 2010-12-09 14:54 TWaver 閱讀(1620) 評(píng)論(0)  編輯  收藏

    這篇文章主要講述了如何用TWaver做業(yè)務(wù)流程管理,通過(guò)連線的流動(dòng)和動(dòng)畫(huà)體現(xiàn)各業(yè)務(wù)之間的流程。


    首先TWaver提供了流程圖需要的各種矢量圖形,比如矩形、圓角矩形、圓、橢圓、多邊形等等:
    1public static const SHAPE_RECTANGLE:String = "rectangle";
    2public static const SHAPE_OVAL:String = "oval";
    3public static const SHAPE_ROUNDRECT:String = "roundrect";
    4public static const SHAPE_STAR:String = "star";
    5public static const SHAPE_TRIANGLE:String = "triangle";
    6public static const SHAPE_CIRCLE:String = "circle";
    7public static const SHAPE_HEXAGON:String = "hexagon";
    8public static const SHAPE_PENTAGON:String = "pentagon";
    9public static const SHAPE_DIAMOND:String = "diamond";
    而且能設(shè)置這些矢量的各種參數(shù),比如線條樣式、粗細(xì)、顏色、填充顏色、漸變樣式、漸變色、3D效果等等:
    1public static const VECTOR_OUTLINE_PATTERN:String = "vector.outline.pattern";
    2public static const VECTOR_OUTLINE_WIDTH:String = "vector.outline.width";
    3public static const VECTOR_OUTLINE_COLOR:String = "vector.outline.color";
    4public static const VECTOR_FILL_COLOR:String = "vector.fill.color";
    5public static const VECTOR_GRADIENT:String = "vector.gradient";
    6public static const VECTOR_GRADIENT_COLOR:String = "vector.gradient.color";
    7public static const VECTOR_DEEP:String = "vector.deep";

    另外TWaver也提供了流程圖需要的各種線條樣式:

     1public static const LINK_TYPE_ARC:String = "arc";
     2public static const LINK_TYPE_TRIANGLE:String = "triangle";
     3public static const LINK_TYPE_PARALLEL:String = "parallel";
     4public static const LINK_TYPE_FLEXIONAL:String = "flexional";
     5public static const LINK_TYPE_FLEXIONAL_HORIZONTAL:String = "flexional.horizontal";
     6public static const LINK_TYPE_FLEXIONAL_VERTICAL:String = "flexional.vertical";
     7public static const LINK_TYPE_ORTHOGONAL:String = "orthogonal";
     8public static const LINK_TYPE_ORTHOGONAL_HORIZONTAL:String = "orthogonal.horizontal";
     9public static const LINK_TYPE_ORTHOGONAL_VERTICAL:String = "orthogonal.vertical";
    10public static const LINK_TYPE_HORIZONTAL_VERTICAL:String = "orthogonal.H.V";
    11public static const LINK_TYPE_VERTICAL_HORIZONTAL:String = "orthogonal.V.H";
    12public static const LINK_TYPE_EXTEND_TOP:String = "extend.top";
    13public static const LINK_TYPE_EXTEND_LEFT:String = "extend.left";
    14public static const LINK_TYPE_EXTEND_BOTTOM:String = "extend.bottom";
    15public static const LINK_TYPE_EXTEND_RIGHT:String = "extend.right";

    而且也能設(shè)置線條的箭頭樣式:


     1public static const ARROW_FROM:String = "arrow.from";
     2public static const ARROW_FROM_FILL:String="arrow.from.fill";
     3public static const ARROW_FROM_ALPHA:String="arrow.from.alpha";
     4public static const ARROW_FROM_SHAPE:String = "arrow.from.shape";
     5public static const ARROW_FROM_COLOR:String = "arrow.from.color";
     6public static const ARROW_FROM_XOFFSET:String = "arrow.from.xoffset";
     7public static const ARROW_FROM_YOFFSET:String = "arrow.from.yoffset";
     8public static const ARROW_FROM_WIDTH:String = "arrow.from.width";
     9public static const ARROW_FROM_HEIGHT:String = "arrow.from.height";
    10public static const ARROW_FROM_OUTLINE_COLOR:String = "arrow.from.outline.color";
    11public static const ARROW_FROM_OUTLINE_ALPHA:String = "arrow.from.outline.alpha";
    12public static const ARROW_FROM_OUTLINE_WIDTH:String = "arrow.from.outline.width";
    13public static const ARROW_FROM_OUTLINE_PATTERN:String = "arrow.from.outline.pattern";
    14public static const ARROW_FROM_AT_EDGE:String = "arrow.from.at.edge";

    有了這些基本元素后,就可以開(kāi)始流程圖的制作了。這里主要介紹一下如何實(shí)現(xiàn)連線的流動(dòng)和動(dòng)畫(huà)效果。基本思路是先起一個(gè)Timer,設(shè)置連線上閃爍圖標(biāo)的透明度(0-255)以及流動(dòng)的偏移量(0-100),再重載LinkUI.drawBody,根據(jù)圖標(biāo)透明度和流動(dòng)偏移量重畫(huà)連線。

     1private function tick(event:TimerEvent = null):void {
     2 iconAlpha -= 40;
     3 flowingOffset += 5;
     4 if(iconAlpha<0){
     5  iconAlpha = 255;
     6 }

     7 if(flowingOffset>100){
     8  flowingOffset = 0;
     9 }

    10 box.forEach(function(element:IElement):void{
    11  if(element is Link){
    12   if(element.getClient("status"!= "normal"){
    13    element.setClient("alpha", iconAlpha);
    14   }
    else{
    15    element.setClient("flowingOffset", flowingOffset);
    16   }

    17  }

    18 }
    );
    19}
     1override protected function drawBody(g:Graphics):void{
     2 super.drawBody(g);
     3
     4 if(link.getClient("status"!= "normal"){
     5  var centerPoint:Point = this.network.getPosition(
     6   Consts.POSITION_FROM, thisnullthis.lineLength/20);
     7  if(centerPoint){
     8   var centerX:Number = centerPoint.x;
     9   var centerY:Number = centerPoint.y;
    10   g.lineStyle(30xFF0000, link.getClient("alpha")/255);
    11
    12   g.drawEllipse(centerX-10, centerY-102020);
    13   var offset:Number = Math.sqrt(10)*2;
    14   g.moveTo(centerX-offset, centerY-offset);
    15   g.lineTo(centerX+offset, centerY+offset);
    16
    17   g.moveTo(00);
    18  }

    19 }
    else{
    20  var flowingOffset:Number = link.getClient("flowingOffset");
    21  var position:Point = this.network.getPosition(Consts.POSITION_FROM,
    22   thisnullthis.lineLength*flowingOffset/100.00);
    23  if(position){
    24   var x:Number = position.x;
    25   var y:Number = position.y;
    26   var linkWidth:Number = link.getStyle(Styles.LINK_WIDTH)+2;
    27   g.lineStyle();
    28   g.beginFill(0xFFFFFF1);
    29   g.drawEllipse(x-linkWidth/2, y-linkWidth/2, linkWidth, linkWidth);
    30   g.endFill();
    31  }

    32 }

    33}

    源碼請(qǐng)到此處下載

    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 在线视频观看免费视频18| 在线观看免费播放av片| 毛片大全免费观看| 亚洲日韩国产精品乱-久| 国产一卡2卡3卡4卡2021免费观看| 亚洲国产日韩在线成人蜜芽 | 日韩电影免费在线| 亚洲国产精品成人午夜在线观看| 我要看免费的毛片| 久久综合亚洲色hezyo| 亚洲成a人片在线观看日本麻豆| 国产免费A∨在线播放| 亚洲精品国产精品乱码不99| 久久午夜免费鲁丝片| 亚洲第一页在线视频| 毛片A级毛片免费播放| 曰批全过程免费视频免费看 | 亚洲人成色7777在线观看不卡| 一级美国片免费看| 亚洲AV无码久久精品色欲| 99久久久国产精品免费无卡顿| 亚洲国产成人久久综合| 国产91精品一区二区麻豆亚洲| 日韩精品在线免费观看| 亚洲av专区无码观看精品天堂| 日本v片免费一区二区三区| 中文字幕av免费专区| 亚洲精品不卡视频| 亚洲乱码中文字幕综合234| 精品一卡2卡三卡4卡免费视频| 亚洲午夜精品在线| 亚洲国产成人久久综合区| 1a级毛片免费观看| 亚洲av永久中文无码精品综合 | 日韩免费视频播播| 999zyz**站免费毛片| 亚洲人成7777影视在线观看| 亚洲国产精品成人AV无码久久综合影院 | 亚洲GV天堂GV无码男同| 亚洲精品无码永久中文字幕| 亚洲免费网站观看视频|