zoukankan      html  css  js  c++  java
  • Flex画流程图

    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="initApp()">
     <mx:Canvas id="paper" x="30" y="24" width="719" height="600">
      <mx:Canvas id="Total" x="10" y="254" width="108" height="78"  borderStyle="inset">
       <mx:Button x="0" y="43" label="关键词导出" width="103" height="28"/>
       <mx:Text x="0" y="0" width="103" height="45" text="List   PV:10000" fontSize="12"/>
      </mx:Canvas>
      <mx:Canvas id="LEV1_1" x="187" y="95" width="108" height="70" borderStyle="inset">
       <mx:Button x="0" y="38" label="关键词导出" width="103" height="26"/>
       <mx:Text x="0" y="0"  width="103" height="39" text="List   PV:10000" fontSize="12"/>
      </mx:Canvas>
      <mx:Canvas id="LEV1_2" x="187" y="315" width="108" height="77" borderStyle="inset">
       <mx:Button x="0" y="45" label="关键词导出" width="103" height="26"/>
       <mx:Text x="0" y="0" width="103" height="46" text="List   PV:10000" fontSize="12"/>
      </mx:Canvas>
      <mx:Canvas id="LEV1_3" x="187" y="504" width="108" height="75" borderStyle="inset">
       <mx:Button x="0" y="41" label="关键词导出" width="103" height="28"/>
       <mx:Text x="0" y="0" width="103" height="42" text="List   PV:10000" fontSize="12"/>
      </mx:Canvas>
      <mx:Canvas id="LEV1_1_1" x="374" y="10" width="108" height="70" borderStyle="inset">
       <mx:Button x="0" y="38" label="关键词导出" width="103" height="26"/>
       <mx:Text x="0" y="0"  width="103" height="39" text="List   PV:10000" fontSize="12"/>
      </mx:Canvas>
      <mx:Canvas id="LEV1_1_2" x="374" y="88" width="108" height="77" borderStyle="inset">
       <mx:Button x="0" y="45" label="关键词导出" width="103" height="26"/>
       <mx:Text x="0" y="0" width="103" height="46" text="List   PV:10000" fontSize="12"/>
      </mx:Canvas>
      <mx:Canvas id="LEV1_1_3" x="374" y="173" width="108" height="75" borderStyle="inset">
       <mx:Button x="0" y="41" label="关键词导出" width="103" height="28" click="export(LEV1_1_3_text.text)"/>
       <mx:Text id="LEV1_1_3_text" x="0" y="0" width="103" height="42" text="List   PV:10000" fontSize="12"/>
      </mx:Canvas>
     </mx:Canvas>

    <mx:Script>
     <![CDATA[
      import mx.controls.Button;
      
      import mx.containers.Canvas;
      
      private function initApp():void{
          
           paper.graphics.clear();
                    doDraw(Total, LEV1_1);
                    doDraw(Total, LEV1_2);
                    doDraw(Total, LEV1_3);
                    doDraw(LEV1_1, LEV1_1_1);
                    doDraw(LEV1_1, LEV1_1_2);
                    doDraw(LEV1_1, LEV1_1_3);
                    createAll();
      }
      
      
      private function createAll():void{
        var canvas:Canvas = new Canvas();
        canvas.x = 374;
        canvas.y = 250;
        canvas.setActualSize(108, 75);
        canvas.setStyle("borderStyle", "inset");
        var button:Button = new Button();
        button.x = 0;
        button.y = 41;
        button.setActualSize(103,28);
        var text:Text = new Text();
        text.x = 0;
        text.y = 0;
        text.setActualSize(103,42);
        button.label = "关键词导出";
        text.text = "List   PV:10000";
        canvas.addChild(button);
        canvas.addChild(text);
        paper.addChild(canvas);
      }
      
      
      private function export(text:String):void{
              ExternalInterface.call("exportQueryXLS", text);  
      }
      
       private function doDraw(source:Sprite,target:Sprite):void
                {
                    var radius:Number = 10;
                    
                    var sourceCenter:Point = new Point(source.x + source.width,source.y + source.height/2);
                    var targetCenter:Point = new Point(target.x ,target.y + target.height/2);
                    
                    var sin:Number = (sourceCenter.y - targetCenter.y)/(Math.sqrt(Math.pow(sourceCenter.x - targetCenter.x,2)+Math.pow(sourceCenter.y - targetCenter.y,2)));

                    var radian:Number = Math.asin(sin);
                    var degree:Number = radian*180/Math.PI;
                    
                    if(source.x < target.x)
                    {
                        if(degree == 0 )
                        {
                            degree = 180;
                        }
                        if(degree > 0)
                        {
                            degree = 180 - degree;
                        }
                        if(degree < 0)
                        {
                            degree = 180 + degree * -1;
                        }
                    }

                    degree += 90;
                    radian = degree*Math.PI / 180;                
                    
    //                var offsetX:Number = radius * Math.cos(radian);        
    //                var offsetY:Number = radius * Math.sin(radian);  
                    var offsetX:Number = 0;
                    var offsetY:Number = 0;  
                    
                    var sourcePointA:Point = new Point(sourceCenter.x + offsetX, sourceCenter.y + offsetY);
                    var sourcePointB:Point = new Point(sourceCenter.x - offsetX, sourceCenter.y - offsetY);    
                    
                    var targetPointA:Point = new Point(targetCenter.x + offsetX, targetCenter.y + offsetY);
                    var targetPointB:Point = new Point(targetCenter.x - offsetX, targetCenter.y - offsetY);    
                    
                   // paper.graphics.clear();
                    paper.graphics.lineStyle(1,0x333300,100);
                    paper.graphics.moveTo(sourcePointA.x,sourcePointA.y);
                    paper.graphics.lineTo(targetPointA.x,targetPointA.y);    
    //                paper.graphics.moveTo(sourcePointB.x,sourcePointB.y);
    //                paper.graphics.lineTo(targetPointB.x,targetPointB.y);    
                }
      
     ]]>
    </mx:Script>


    </mx:Application>

  • 相关阅读:
    job还是job
    oracle输出多行多列数据
    数组做为参数传入Oracle存储过程操作数据库
    发票摇奖数据汇总(数据行转列)
    最近整理的一些行列转换sql(有自己的,有别人的),留作记录
    【Android Developers Training】 40. 序言:通过NFC共享文件
    【Android Developers Training】 39. 获取文件信息
    【Android Developers Training】 38. 文件共享需求
    【Android Developers Training】 37. 共享一个文件
    【Android Developers Training】 36. 设置文件共享
  • 原文地址:https://www.cnblogs.com/sharpxiajun/p/2190207.html
Copyright © 2011-2022 走看看