好象很多一大串,我想你要的就是点选输入框的时候,上面的图片要放大,我想这个功能用javascript不能实现的,用VC实现起来都有点难,你怎么判断你点选的输入框是图片上的哪个点,完全只能用眼睛去看,用座标判断也有个问题,你扫描的图片不可能那么精准.难,最不可能实现的"要将此图片相应的项放大显示",你凭空怎么把一张图抠出一小块放大,这又不是做好的Flash。想想还有其他的替代的需求吧
调试欢乐多
<script LANGUAGE="javascript">
showModelessDialog("m.htm","","dialogWidth:200px; dialogheight:160px; status: no; help: no;");
</SCRIPT>m.htm里:
document.body.scrollTop = 100;
document.body.scrollLeft = 200;用这种方式将模态框当前的显示范围与主页面里当前操作区关联起来, 在主页面里操作某个输入框的时候, 先读出该操作框的坐标, 然后在模态框里显示相应的位置, 不过放大显示这个功能就不怎么好实现了在主页面里读取某控件的位置坐标:
function getObjectLeft(e)
{
var l=e.offsetLeft;
while(e=e.offsetParent) l += e.offsetLeft;
return l;
}
function getObjectTop(e)
{
var t=e.offsetTop;
while(e=e.offsetParent) t += e.offsetTop;
return t;
}
建议将该图片作为表单的背景,input控件设为“透明”样式,正好套在图片的相应部位。这样人工输入的字符叠在图片上
var o = window.open('about:blank','','width=500,height=400');
o.document.write('<img width=1000 height=1000 src=http://expert.csdn.net/images/csdn.gif>');
</script>
<body onload=""><input MoveX="300" MoveY="500" onfocus="o.scrollTo(this.MoveX,this.MoveY);">
<input MoveX="300" MoveY="400" onfocus="o.scrollTo(this.MoveX,this.MoveY);">
<input MoveX="300" MoveY="300" onfocus="o.scrollTo(this.MoveX,this.MoveY);">
<input MoveX="300" MoveY="200" onfocus="o.scrollTo(this.MoveX,this.MoveY);"></body>
2、如果图片动态缩放的话,那么MoveX MoveY属性设置成百分比,用百分比乘以图片的长宽得到最后滚动位置,然后滚动。为了看清楚一点,我把它换成IFRAME<body><iframe name="o"></iframe>
<input MoveX="300" MoveY="500" onfocus="o.scrollTo(this.MoveX,this.MoveY);">
<input MoveX="300" MoveY="400" onfocus="o.scrollTo(this.MoveX,this.MoveY);">
<input MoveX="300" MoveY="300" onfocus="o.scrollTo(this.MoveX,this.MoveY);">
<input MoveX="300" MoveY="200" onfocus="o.scrollTo(this.MoveX,this.MoveY);"></body>
<script>
o.document.write('<img width=1000 height=1000 src=http://expert.csdn.net/images/csdn.gif>');
</script>