⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cakystat.htc

📁 HTC,demo WEB用于。 超大型
💻 HTC
📖 第 1 页 / 共 2 页
字号:
	var vmlCaky = "";
	var vmlTitle = "";
	var vAltText = "";
	var lastPercent = 0;
	var curPercent = 0;
	var vLengendLeft = 0;
	var topScale = 0;
	try{
		oItemNodesList = objXMLDoc.selectNodes("//root/item");
		if(!oItemNodesList || !oItemNodesList.length) return; 
		if(hasLegend){
			if(oItemNodesList.length <15){//装配vmlTitle
				vmlTitle = "<v:roundrect style='border:solid 0px green;left:600;top:100;width:6700;height:350;' filled='false' stroked='false'><v:textbox style='border:solid 0px blue;font-size:10.5pt;font-weight:bold;text-align:center;'>" + vCaption + "</v:textbox></v:roundrect>";
			}else if(oItemNodesList.length >= 15 && oItemNodesList.length <30){
				vmlTitle = "<v:roundrect style='border:solid 0px green;left:600;top:100;width:8700;height:350;' filled='false' stroked='false'><v:textbox style='border:solid 0px blue;font-size:10.5pt;font-weight:bold;text-align:center;'>" + vCaption + "</v:textbox></v:roundrect>";	
			}else{
				vmlTitle = "<v:roundrect style='border:solid 0px green;left:600;top:100;width:10200;height:350;' filled='false' stroked='false'><v:textbox style='border:solid 0px blue;font-size:10.5pt;font-weight:bold;text-align:center;'>" + vCaption + "</v:textbox></v:roundrect>";	
			}
		}else{
			vmlTitle = "<v:roundrect style='border:solid 0px green;left:800;top:100;width:5200;height:350;' filled='false' stroked='false'><v:textbox style='border:solid 0px blue;font-size:10.5pt;font-weight:bold;text-align:center;'>" + vCaption + "</v:textbox></v:roundrect>";
		}
		for(var i=0;i<oItemNodesList.length;i++){//装配vmlCaky
			if(parseFloat(oItemNodesList[i].childNodes[1].text) != 0){//
				vAltText = "名称: " + oItemNodesList[i].childNodes[0].text + "\n数值: " + oItemNodesList[i].childNodes[1].text + "\n比率: " +oItemNodesList[i].childNodes[2].text;
			
				if(i==0){
					lastPercent = parseFloat(oItemNodesList[i].childNodes[2].text);
					curPercent = lastPercent;
					vmlCaky += createCakyVML(0,curPercent*3.6,objCakyColorArray[i],vAltText,4000,i);
				}else if(i== (oItemNodesList.length - 1)){
					curPercent = parseFloat(oItemNodesList[i].childNodes[2].text);
					vmlCaky += createCakyVML(lastPercent*3.6,100*3.6,objCakyColorArray[i],vAltText,4000,i);
				}else{
					curPercent = parseFloat(oItemNodesList[i].childNodes[2].text) + lastPercent;
					vmlCaky += createCakyVML(lastPercent*3.6,curPercent*3.6,objCakyColorArray[i],vAltText,4000,i);
					lastPercent = curPercent;
				}
			}
			if(booleanHasLegend){//有图例
				if(i>=0 && i< 15){//装配图例
					vLengendLeft = 6400;
					topScale = i;
				}else if(i>=15 && i<30){
					vLengendLeft = 7900;
					topScale = i - 15;
				}else if(i>=30){
					vLengendLeft = 9400;
					topScale = i - 30;
				}
				vmlCaky +="<v:rect style='position:absolute;left:" + vLengendLeft + ";top:" + (900 + topScale*250) + ";width:40;height:20;z-index:1;' coordsize='5000,5000' fillcolor='" + objCakyColorArray[i] + "' stroked='false'><v:shadow on='True' offset='0pt,1pt' color='black'/></v:rect>";//图例
				vmlCaky +="<v:rect style='position:absolute;border:solid 0px green;left:" + (vLengendLeft + 150) + ";width:1500;top:" + (820 + topScale*250) + ";height:300' filled='false' stroked='false'><v:textbox style='position:absolute;border:solid 0px blue;left:0;top:0;font-size:9pt;'>" + oItemNodesList[i].childNodes[0].text + "(" + oItemNodesList[i].childNodes[1].text + ")</v:textbox></v:rect>";//图例说明文字
				if(i == oItemNodesList.length-1){//总计
					vmlCaky += "<v:line style='position:absolute;left:" + (vLengendLeft + 50) + ";top:" + (1000 + (topScale+1)*250) + ";z-index:1;' from='0,0' to='110,0' strokecolor='red' strokeweight='3pt'><v:stroke EndArrow='Classic'/></v:line>";
					vmlCaky += "<v:rect style='position:absolute;left:" + (vLengendLeft + 150) + ";width:1500;top:" + (880 + (topScale+1)*250) + ";height:300' filled='false' stroked='false'><v:textbox style='position:absolute;border:solid 0px blue;left:0;top:0;font-size:9pt;font-weight:bold;color:red;'>总计:" + patientTotal + "</v:textbox></v:rect>";
				}	
			}
		}
		if(vHasBorder){//有边框
			vmlEnd = "<v:group id='" + vTagID + "' style='position:absolute;border:solid " + vBorderWeight + "px " + vBorderColor + ";background:" + vBackColor + ";left:" + vLeft + "px;top:" + vTop + "px;width:" + vWidth + "px;height:" + vHeight + "px;' coordsize='2000,2000' xmlns:v='urn:schemas-microsoft-com:vml'>" + vmlTitle + vmlCaky + "<v:rect style='position:absolute;left:0;top:0;height:5500;' stroked='false'/></v:group>";
		}else{//无边框
			vmlEnd = "<v:group id='" + vTagID + "' style='position:absolute;background:" + vBackColor + ";left:" + vLeft + "px;top:" + vTop + "px;width:" + vWidth + "px;height:" + vHeight + "px;' coordsize='2000,2000' xmlns:v='urn:schemas-microsoft-com:vml'>" + vmlTitle + vmlCaky + "<v:rect style='position:absolute;left:0;top:0;height:5500;' stroked='false'/></v:group>";
		}
		objContainerDiv.insertAdjacentHTML("afterBegin",vmlEnd);//生成饼图
		var objShapeList = objContainerDiv.firstChild.all.tags("shape");
		for( var i = 0; i < objShapeList.length; i ++ ){
			objShapeList[i].onmouseover = processShapeMouseoverEvent;
			objShapeList[i].onmouseout = processShapeMouseoutEvent;
		}
	}catch(e){}
}

function processShapeMouseoverEvent(){
	var objSrc = event.srcElement;
	objSrc.coordsize = "3500,3500";
	objSrc.fillcolor = "black";
	
}

function processShapeMouseoutEvent(){
	var objSrc = event.srcElement;
	objSrc.coordsize = "4000,4000";
	objSrc.fillcolor = objCakyColorArray[objSrc.colorIndex];
}

function refresh(){//
	with(element.style){
		left = vLeft;
		top = vTop;
		width = vWidth;
		height = vHeight;
	}
	with(objContainerDiv.style){
		left = element.style.left;
		top = element.style.top;
		width = element.style.width;
		height = element.style.height;
	}
}

function putXMLSource(argXMLSource){
	var vSumXSLT;
	var vAddElementXSLT;
	var objGlobal;
	try{
		objGlobal = __objGlobalCommonInst;		
	}catch(e){}
	try{
		if(!objGlobal){
			objGlobal = parent.__objGlobalCommonInst;
		}
	}catch(e){}
	
	if(!objGlobal){
		objGlobal = parent.parent.__objGlobalCommonInst;
	}
	vSumXSLT = '<?xml version="1.0" encoding="GBK"?><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"><xsl:output method="xml" version="1.0" encoding="GBK" indent="no" omit-xml-declaration="yes"/><xsl:template match="/"><xsl:value-of select=\'sum(//value)\'/></xsl:template></xsl:stylesheet>';
	vAddElementXSLT = '<?xml version="1.0" encoding="GBK"?><xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"><xsl:output method="xml" version="1.0" encoding="GBK" indent="no" omit-xml-declaration="no"/><xsl:param name="valueCnt" select="sum(root/item/value)"/><xsl:template match="/"><root><xsl:apply-templates select="//root"/></root></xsl:template><xsl:template match="//root"><xsl:for-each select="item"><xsl:copy><xsl:element name="name"><xsl:value-of select="name"/></xsl:element><xsl:element name="value"><xsl:value-of select="value"/></xsl:element><xsl:element name="percentValue"><xsl:choose><xsl:when test="format-number(value div $valueCnt,\'###.##%\') = \'%\'"><xsl:value-of select="\'0%\'"/></xsl:when><xsl:otherwise><xsl:value-of select="format-number(value div $valueCnt,\'###.##%\')"/></xsl:otherwise></xsl:choose></xsl:element></xsl:copy></xsl:for-each></xsl:template></xsl:stylesheet>';
	objXMLDoc = objGlobal.transformXMLToNode(argXMLSource,vAddElementXSLT);	
	patientTotal = parseFloat(objGlobal.transformXML(objXMLDoc,vSumXSLT));
}

function putLeft(argLeft){
	vLeft = argLeft;
}

function getLeft(){
	return vLeft;
}

function putTop(argTop){
	vTop = argTop;
}

function getTop(){
	return vTop;
}

function putWidth(argWidth){
	vWidth = argWidth;
}

function getWidth(){
	return vWidth;
}

function putHeight(argHeight){
	vHeight = argHeight;
}

function getHeight(){
	return vHeight;
}

function putCaption(argCaption){
	vCaption = argCaption;
}

function putBackColor(argBackColor){
	vBackColor = argBackColor;
}

function putHasBorder(argHasBorder){
	if(argHasBorder == "yes"){
		vHasBorder = true;
	}else if(argHasBorder == "no"){
		vHasBorder = false;
	}
}

function putBorderColor(argBorderColor){
	vBorderColor = argBorderColor;
}

function putBorderWeight(argBorderWeight){
	if(argBorderWeight.match(/^[0-9]*$/) != null){
		vBorderWeight = parseInt(argBorderWeight);
	}
}

function putTagID(argTagID){
	vTagID = argTagID;
}

function putHasLegend(argHasLegend){
	if(argHasLegend == "no"){
		booleanHasLegend = false;
	}else if(argHasLegend == "yes"){
		booleanHasLegend = true;
	}
}

function putBlackDistance(argBlankDistance){
	intBlankDistance = argBlankDistance;
}
//-->
</script>
</public:component>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -