📄 excelpage.htm.bak
字号:
<html>
<head>
<title> Excel工作空间 </title>
<meta http-equiv="content-type" content="text/html; charset=gb2312">
<script labguage=javascript>
var clickobj = null; //要输入文字的对象
var owidth = 80;
var oheight = 20;
var tablecol = 10;
var tablerow = 30;
</script>
<LINK media='print' href='Css/printCss.css' type='text/css' rel='stylesheet'>
<LINK media='screen' href='Css/Css.css' type='text/css' rel='stylesheet'>
<script language="JavaScript" src="js/Menu.js"></script>
<script language="JavaScript" src="js/MenuFunction.js"></script>
<script language="JavaScript">
/********************************************************
* 功能:Hashtable *
* 作者:胡耀 *
* 使用方法: var yourVariable = new Hashtable(); *
* 实现了如下方法: *
* ◆put(key,value) *
* ◆get(key,[defaultValue]),其中defaultValue参数可选 *
* 无defaultValue,get没有匹配时返回null *
* ◆remove(key),成功返回ture,失败返回false(要求IE5.5)*
* ◆clear() *
* ◆containsKey(key),包含返回ture,否则返回false *
* ◆containsValue(value),包含返回ture,否则返回false *
* ◆size(),返回hashtable中数据总数 *
********************************************************/
function Hashtable()
{
this.hash = new ActiveXObject("Scripting.Dictionary");
this.put = put;
this.get = get;
this.keys = keys;
this.values = values;
this.clear = clear;
this.remove = remove;
this.containsKey = containsKey;
this.containsValue = containsValue;
this.size = size;
function put(key,value) { if (this.hash.Exists(key)) this.remove(key); this.hash.Add(key,value); }
function get(key) { if(typeof( this.hash.Item(key)) != 'undefined') return this.hash.Item(key); return (arguments.length==2) ? arguments[1] : null; }
function remove(key) { if (this.hash.Exists(key)) this.hash.Remove(key); }
function keys() { return (new VBArray(this.hash.Keys())).toArray();}
function values() { return (new VBArray(this.hash.Items())).toArray(); }
function clear() { this.hash.RemoveAll(); }
function containsKey(key) { return (this.hash.Exists(key)) ? true : false; }
function containsValue(value) { var values = (new VBArray(this.hash.Items())).toArray(); for (var i=0; i<values.length; i++) if(values[i] == value) return true; return false; }
function size() { return this.hash.Count; }
}
</script>
</head>
<body>
<object id="WebBrowser" width=0 height=0 classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></object>
<!----------------------------------------------------------------------------------------------------->
<table id=table cellPadding=0 cellSpacing=0 class=dwStyle onselectstart='return false'>
<tr height="20">
<td colspan =2 style="background-color:#BED5F9">
<!------------------------------菜单栏----------------------------------------------------------------->
<table id = menutable class=mymenutable cellSpacing="0" cellPadding="0" border="0" height="20">
<tr>
<td width="8" background="Images/toolbar_left.gif"></td>
<td width = 50 class="tdMenuNormal" onmousedown="ButtonClick(this,1)" onmouseover="onButton(this,1)" onmouseout="offButton(this,1)" >文件(F)</td>
<td width="8"></td>
<td width=50 class="tdMenuNormal" onmousedown="ButtonClick(this,2)" onmouseover="onButton(this,1)" onmouseout="offButton(this,1)" >编辑(E)</td>
<td width="8"></td>
<td width=50 class="tdMenuNormal" onmousedown="ButtonClick(this,3)" onmouseover="onButton(this,1)" onmouseout="offButton(this,1)" >操作(O)</td>
</tr>
</table>
<!----------------------------------------------------------------------------------------------------->
</td>
</tr>
<tr>
<td style="background-color:#BED5F9" colspan =2 valign=top>
<!------------------------工具栏菜单栏----------------------------------------------------------------->
<table id="tbBtnToolbar" class = mytooltable style="FONT-SIZE: 9pt; FONT-FAMILY: 宋体; HEIGHT: 20px" cellSpacing="0" cellPadding="0">
<tr height="20">
<td width="8" background="Images/toolbar_left.gif"></td>
<td background="Images/toolbar_bg.gif">
<table cellSpacing="0" cellPadding="0" border="0">
<tr>
<td width="2"></td>
<td class="tdBarNormal" onmouseover="onButton(this,2)" onclick="cratenew()" onmouseout="offButton(this,2)" vAlign="middle" align="center"><IMG src="Images/new.gif"></td>
<td class="tdBarNormal" onmouseover="onButton(this,2)" onclick="open()" onmouseout="offButton(this,2)" vAlign="middle" align="center"><IMG src="Images/open.gif"></td>
<td class="tdBarNormal" onmouseover="onButton(this,2)" onclick="save()" onmouseout="offButton(this,2)" vAlign="middle" align="center"><IMG src="Images/save.gif"></td>
<td><IMG src="Images/toolbar_splt.gif"></td>
<td class="tdBarNormal" onmouseover="onButton(this,2)" onclick="copy()" onmouseout="offButton(this,2)" vAlign="middle" align="center"><IMG src="Images/copy.gif"></td>
<td class="tdBarNormal" onmouseover="onButton(this,2)" onclick="paster()" onmouseout="offButton(this,2)" vAlign="middle" align="center"><IMG src="Images/paste.gif"></td>
<td class="tdBarNormal" onmouseover="onButton(this,2)" onclick="print()" onmouseout="offButton(this,2)" vAlign="middle" align="center"><IMG src="Images/print.gif"></td>
<td class="tdBarNormal" onmouseover="onButton(this,2)" onclick="preview()" onmouseout="offButton(this,2)" vAlign="middle" align="center"><IMG src="Images/preview.gif"></td>
<td><IMG src="Images/toolbar_splt.gif"></td>
<td class="tdBarNormal" onmouseover="onButton(this,2)" onclick="left()" onmouseout="offButton(this,2)" vAlign="middle" align="center"><IMG src="Images/fontleft.gif"></td>
<td class="tdBarNormal" onmouseover="onButton(this,2)" onclick="mid()" onmouseout="offButton(this,2)" vAlign="middle" align="center"><IMG src="Images/fontmid.gif"></td>
<td class="tdBarNormal" onmouseover="onButton(this,2)" onclick="right()" onmouseout="offButton(this,2)" vAlign="middle" align="center"><IMG src="Images/fontright.gif"></td>
<td><IMG src="Images/toolbar_splt.gif"></td>
<td class="tdBarNormal" onmouseover="onButton(this,2)" onclick="range()" onmouseout="offButton(this,2)" vAlign="middle" align="center"><IMG src="Images/4b.gif"></td>
</tr>
</table>
</td>
<td width="13" background="Images/toolbar_right.gif"></td>
<td width=8></td>
<td width="8" background="Images/toolbar_left.gif"></td>
<td background="Images/toolbar_bg.gif">
<table cellSpacing="0" cellPadding="0" border="0">
<tr>
<td width="2"></td>
<td>
<SELECT style="WIDTH: 100px;">
<OPTION selected>宋体</OPTION>
</SELECT>
</td>
<td>
<SELECT style="WIDTH: 50px;">
<OPTION>9</OPTION>
<OPTION>10</OPTION>
<OPTION>11</OPTION>
<OPTION selected>12</OPTION>
<OPTION>14</OPTION>
<OPTION>16</OPTION>
</SELECT>
</td>
<td width="2"></td>
<td><IMG src="Images/toolbar_splt.gif"></td>
<td class="tdNormal" onmouseover="onButton(this)" onclick="b()" onmouseout="offButton(this)" vAlign="middle" align="center"><IMG src="Images/b.gif"></td>
<td class="tdNormal" onmouseover="onButton(this)" onclick="i()" onmouseout="offButton(this)" vAlign="middle" align="center"><IMG src="Images/i.gif"></td>
<td class="tdNormal" onmouseover="onButton(this)" onclick="u()" onmouseout="offButton(this)" vAlign="middle" align="center"><IMG src="Images/u.gif"></td>
<td class="tdNormal" onmouseover="onButton(this)" onclick="selected_area.unitTD()" onmouseout="offButton(this)" vAlign="middle" align="center"><IMG src="Images/merge.gif"></td>
<td><IMG src="Images/toolbar_splt.gif"></td>
</tr>
</table>
</td>
<td width="13" background="Images/toolbar_right.gif"></td>
</tr>
</table>
<!----------------------------------------------------------------------------------------------------->
<td>
</tr>
<tr><td colspan=2 valign=top>
<!------------------------头--------------------------------------------------------------------------->
<div id=topdiv>
<table id=toptable cellPadding=0 cellSpacing=0 class=dwTHStyle>
<thead><tr onmousedown=ChangWidth() onmousemove=ChangCursor()>
<td style="width:40"><div></div></td>
<script language=vbscript>
function getLetter(i)
getLetter=Chr(i)
end function
</script>
<script language="JavaScript">
<!--
var col = 65 + Number(tablecol);
for(var i=65; i<col; i++){
document.write("<td style=width:81>" + getLetter(i) + "</td>");
}
//-->
</script>
</tr>
</thead>
</table>
</div>
<!----------------------------------------------------------------------------------------------------->
</td></tr><tr>
<td valign=top>
<!------------------------左--------------------------------------------------------------------------->
<div id = leftdiv>
<table id=lefttable cellPadding=0 cellSpacing=0 class=dwTLStyle onmousedown=ChangHeight() onmousemove=ChangHCursor()>
<tbody>
<script language="JavaScript">
<!--
for(var i=1; i<=tablerow; i++){
document.write("<tr><td style=width:40;height:20px>" + i + "</td></tr>");
}
//-->
</script>
</tbody>
</table>
</div>
<!----------------------------------------------------------------------------------------------------->
</td>
<td valign=top><div id =rightdiv>
<!-----------------------中---------------------------------------------------------------------------->
<table id=t1 cellPadding=0 cellSpacing=0 class= dwTBStyle>
<tbody ondrag="return false" onmousedown='down()' onmouseover='move()' onmouseup='up()' onselectstart='return false' >
<script language="JavaScript">
<!--
for(var i=1; i<=tablerow; i++){
document.write("<tr>");
for(var j=0; j<tablecol; j++){
{
if(i==1)
document.write("<td style=width:80px;height:20px><div contentEditable=true></div></td>");
else if( j == 0 )
document.write("<td style=height:20px><div contentEditable=true></div></td>");
else
document.write("<td ><div contentEditable=true></div></td>");
}
}
document.write("</tr>");
}
//-->
</script>
</tbody>
</table>
<!----------------------------------------------------------------------------------------------------->
</div></td></tr></table>
<!----------------------------------------------------------------------------------------------------->
<input style="display:none" type="file" id="path"/>
<button onclick='selected_area.drawNet()'>网</button>
<button onclick='selected_area.drawRect()'>框</button>
<button onclick='selected_area.drawTopLine()'>上</button>
<button onclick='selected_area.drawBottomLine()'>下</button>
<button onclick='selected_area.drawLeftLine()'>左</button>
<button onclick='selected_area.drawRightLine()'>右</button>
<button onclick='selected_area.drawNone()'>无</button>
<div style="position:absolute; left:100; top:300" id= ohoh></div>
<div style="position:absolute; left:300; top:300" id= ohoh1></div>
<div style="position:absolute; left:500; top:400" id= ohoh2></div>
<div style="position:absolute; left:500; top:430" id= ohoh3></div>
<div style="position:absolute; left:50; top:450" id= ohoh4></div>
<div style="position:absolute; left:500; top:450" id= ohoh5></div>
<input type=button onclick=window.location="view-source:"+document.location.href>
<div id = hehe style="position:absolute;background-color:yellow; FILTER: Alpha( style=0,opacity=25);display:;font-size:9pt" onmousemove='move()' onmousedown='down()' onmouseup='up()' oncontextmenu=RightClick() onselectstart='return false'></div>
<script language="JavaScript">
<!--
//*****************************************按钮工具条相关代码******************
function onButton(element,index)
{
if(index=='1')
element.className="tdMenuBtnOver";
else
element.className="tdBarBtnOver";
element.background="Images/btn_bg.gif";
}
//
function offButton(element,index)
{
if(index=='1')
element.className="tdMenuNormal";
else
element.className="tdBarNormal";
element.background="";
}
//******************************************************************************
var tbs = new Hashtable();//记录起始表格
var unitcells = new Hashtable();//记录合并的对象
var n = 0;//开关变量1表示正在选择0表示没有进行选择
var tablecol = 10;//表一共有多少列
var tablerow = 30;//表一共有多少行
var tbobj = t1;//表格对象
var addtop = 78;//往上要加多少
var addleft = 11;//左边要加多少
Array.prototype.digitalsort=function(){this.sort(new Function("a","b","return digitalcomp(a,b,'1')"));}
function digitalcomp(x,y,flag)
{
if(flag!=1) return Number(y)-Number(x);
else return Number(x)-Number(y);
}
function coordinates(row,col,merge)
{
this.row = row;
this.col = col;
this.merge = merge;
}
//-----------------------创建起始时候的哈希表--------------------------------
function cal_coordinates(){
for(var i=0; i<tbobj.rows.length; i++){
for(var j=0; j<tbobj.rows[0].cells.length; j++){
var key = i + '-' + j;
var col = new coordinates(0,0,false);
col.row = i;
col.col = j;
col.merge = false;
tbs.put(key, col);
}
}
}
cal_coordinates();
//----------------------------------------------------------------------------
function selectedArea(sy,ey,sobj,eobj,lineColor)
{
this.sobj = sobj;//鼠标选中的开始的表格
this.eobj = eobj;//鼠标选中的最后的表格
this.lineColor = lineColor;
this.sy = sy;
this.ey = ey;
//以下四个变量是在表开始建立的时候的行号和列号定位的单元格子
var scol = 0;
var srow = 0;
var ecol = 0;
var erow = 0;
this.show = show;//显示所选范围
this.unitTD = unitTD;//合并单元格
this.getscol = getscol;
this.getecol = getecol;
function getscol()
{
return scol;
}
function getecol()
{
return ecol;
}
//合并单元格
function unitTD()
{
var delobjs = new Array();//存放需要删除的对象
var n=0;//记录删除的格数
var myobj = tbs.get(srow+'-'+scol);//得到选择的起始行和起始列的值,作为其他选种格子的值
var currow = myobj.row;
var curcol = myobj.col;
var unitvalue = srow+'.'+scol+'.'+erow+'.'+ecol;//当前合并的起始行和起始列
for(var i = srow; i<=erow; i++)
for(var j = scol; j<=ecol; j++)
{
var key = i + '-' + j;
var changeobj = tbs.get(key);
if(unitcells.containsKey(key))
{
//说明曾经删除过
unitcells.remove(key);
}
if(!changeobj.merge)
{
delobjs[n++] = tbobj.rows[changeobj.row].cells[changeobj.col];
}
//第一个不放入进去,同时第一个的merge属性为false
unitcells.put(i+'-'+j , unitvalue);
if(i!=srow||j!=scol)
{
changeobj.merge = true;
}
changeobj.row = currow;
changeobj.col = curcol;
}
//修改后面的列值
changehashcolvalue();
for(var i=1; i<delobjs.length; i++)
{
delobjs[i].removeNode();
}
delobjs[0].colSpan = ecol-scol + 1;
delobjs[0].rowSpan = erow-srow + 1;
//隐藏右键菜单
oPopup.hide();
}
//修改哈稀表中的col的值
function changehashcolvalue()
{
for(var i = srow; i<=erow; i++)
{
var flag = true;
var mercolnum = 0;//第一行合并了多少列
var procolnum = 0;//当前行从当前列算起的前一个有列号的列序号
//倒数过去,当前行第一个有列号的cell对象
for(var j = scol-1; j>0; j--)
{
var key = i+'-'+j
var objpro = tbs.get(key);
if(objpro.merge)
{
//说明此行此列在现实表中不存在
continue;
}
else
{
procolnum = tbobj.rows[objpro.row].cells[objpro.col].cellIndex;
break;
}
}
//修改列值?
for(var j = ecol+1; j<tablecol; j++)
{
var key = i + '-' + j;
var changeobj = tbs.get(key);//当前行中,选中对象的一个格子
if(changeobj.merge)
{
//说明此行此列在现实表中不存在
continue;
}
else
{
if(flag)
{
//找第一个
var nextcolnum = tbobj.rows[changeobj.row].cells[changeobj.col].cellIndex;
if(i == srow)
{
mercolnum = nextcolnum - procolnum - 2;
}
else
{
mercolnum = nextcolnum - procolnum - 1;
}
flag = false;
}
var col = changeobj.col - mercolnum;
//判断是否要更新块
if(unitcells.containsKey(key))
{
mendblockvalue(key,col);
}
changeobj.col = col;
}
}
}
}
//修改合并块的列值
function mendblockvalue(key,col)
{
var rowcells = unitcells.get(key);
var values = rowcells.split('.');
var sr = values[0];
var sc = values[1];
var er = values[2];
var ec = values[3];
for(i = sr ;i<=er;i++)
for(j=sc;j<=ec;j++)
{
var changeobj = tbs.get(key);
changeobj.col = col;
}
}
function show()
{
//首先进行鼠标移动的方向判断,并获得起始状态的srowv,scol和erow,ecol
if(this.sy>=this.ey)
{
//向上
getrowcol(true,this.eobj)
ohoh.innerText = 'srow=' + srow + ',scol=' + scol;
getrowcol(false,this.sobj)
ohoh1.innerText = 'erow=' + erow + ',ecol=' + ecol;
}
else
{
//向下
getrowcol(true,this.sobj)
ohoh.innerText = 'srow=' + srow + ',scol=' + scol;
getrowcol(false,this.eobj)
ohoh1.innerText = 'erow=' + erow + ',ecol=' + ecol;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -