<canvas width="300" height="300" style="border:1px solid #c3c3c3">
</canvas>
</div>
<scripr>
var pp=document.getElementById("cd")
pp.onclick=function(e){
e=e||event
var x=e.clientX-pp.offsetLeft//获取点击后x的坐标
var y=e.clientY-pp.offsetTop//获取点击后y的坐标
alert(x)
alert(y)
}
</scripr>
给你的画布注册事件监听器:this.canvas.addKeyListener(this)//这是要加入的,
this.addKeyListener(this)
原因是因为,当你点击窗口内后,焦点就被 canvas 捕获了,
如果 canvas 没有注册键盘事件监听器,它当然不能对键盘的事件作出反应.
是winform程序吧??如果是按如下步骤 *** 作:
1.先将Form的KeyPreview属性改为:True!
2.为Form添加一个KeyDown事件!如下代码:
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
//textBox1是用来显示.keyDown是自己写的函数!
textBox1.Text += keyDown(e.KeyValue)
}
//注:Form1_KeyDown事件是工具生成!
3.写一个keyDown函数,代码如下:
private string keyDown(int keyValue)
{
switch (keyValue)
{
case 96:
return "0"
break
case 97:
return "1"
break
case 98:
return "2"
break
.............
case 105:
return "9"
break
}
return ""
}
这样就可以了!
如果是ASP.NET的话再说!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)