Atitit。监听键盘上下左右方向键事件java js jquery   c#.net

1. Keyword1

2. 通用的实现流程1

3. Js的实现1

3.1. Bind control ,event handeler1

3.2. key_press_hadler4up2

4. Java的实现3

5. C# .net winformn4

6. 参考4

1. Keyword

键盘事件  方向键   上下左右  按键监听

2. 通用的实现流程

Bind (control,key_eventHandel)

key_eventHandel

获得当前控件

var now=$(".selected");

3. Js的实现

3.1. Bind control ,event handeler

key_eventHandel)

document.onkeydown=function(event){

var e = event || window.event || arguments.callee.caller.arguments[0];

if(e && e.keyCode==40 || e && e.keyCode==39){//下,右

//alert('40=下键,39=右键');

var now=$(".selected");

key_press_hadler(now);

return false;

}

if(e && e.keyCode==38 || e && e.keyCode==37){//上,左

//alert('38=上键,37=左键');

var now=$(".selected");key_press_hadler4up(now);

}

};

作者::  ★(attilax)>>>   绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

3.2. key_press_hadler4up

function key_press_hadler(obj)

{

//  alert(obj);

var next=$(obj).next();

if(next.length==0){return;};

window.setTimeout(function(){set_page_info(next)},10);

//  ;

next.addClass("selected");  $(obj).removeClass("selected");

}

function key_press_hadler4up(obj)

{

//  alert(obj);

var next=$(obj).prev();

if(next.length==0){return;};

$(obj).removeClass("selected");

next.addClass("selected");

window.setTimeout(function(){set_page_info(next)},10);

}

4. Java的实现

JFrame frame = new JFrame("") {

// 重写这个方法

// @Override

protected void processWindowEvent(WindowEvent e) {

System.out.println(e.getID());

if (e.getID() == WindowEvent.WINDOW_CLOSING) {

// KeyEvent evt = (KeyEvent) e;

// if (evt.getKeyCode() == KeyEvent.VK_ESCAPE &&

// evt.isControlDown()) {

//

// }

// MsgBox.show("close  a");

Android的实现

Android手机常用的三个键,home键,back键及menu键。
在应用程序里我们经常会对它们经常进行一定的处理,方便用户使用。
首先我们要明确点击三个键时系统干了什么事,
如果没有进行监听处理,
点击home键时,系统默认只执行应用程序的当前显示的Activity的onStop()方法后跳出界面。
而点击back键时,系统默认执行的是应用程序当前Activity的finish()方法后跳出界面。
而点击menu键时,系统默认不进行任何处理。

2.监听Menu键,注意:在没有实体Menu键的机器上,只能在sdk版本10以下才会出现Menu键

@Override
 public boolean onKeyDown(int keyCode, KeyEvent event) {
  // TODO Auto-generated method stub
  if(keyCode==KeyEvent.KEYCODE_BACK&&event.getRepeatCount()==0){
//   event.startTracking();
   Toast.makeText(this, "监听返回键BACK", Toast.LENGTH_SHORT).show();
   dialog();
   return false;
  }else if(keyCode==KeyEvent.KEYCODE_MENU){
   Toast.makeText(this, "监听菜单键MENU", Toast.LENGTH_SHORT).show();
   return false;
  }//由于HOME键为系统键,此处不能捕获,需要重写onAttachedToWindow()
  else if(keyCode==KeyEvent.KEYCODE_HOME){
   Toast.makeText(this, "监听主页键HOME", Toast.LENGTH_SHORT).show();
   return false;
  }
  return super.onKeyDown(keyCode, event);
 }

5. C# .net winformn

C#winForm里键盘事件的响应
1,方向键和回车不能够在KeyDown事件里响应.解决方案是重写ProcessCmdKey
2,其原理并不清晰.base.ProcessCmdKey调用父类的键盘事件.
  KeyDown函数等于在父类里注册了一个事件响应代码.

//在KeyDown事件里无法捕获方向键,回车.能捕获空格之类

//但是是重写了之后,就不能捕获了.

private void FrmKeyDown_KeyDown(object sender, KeyEventArgs e)

//方向键事件的处理,只能重写ProcessCmdKey,重写的方法体可以自动生成,不用担心.

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)

6. 参考

winform键盘事件方向键的响应 - 博客园.html

android--监听按键_行者_新浪博客.html

android 键盘按键监听 - kakaxi1o1的专栏 - 博客频道 - CSDN.NET.html

winform键盘事件(方向键)的响应 - 纳米程序员 - 博客园.html

Atitit。监听键盘上下左右方向键事件java js jquery c#.net的更多相关文章

  1. cocos2d JS 监听键盘触摸响应事件(cc.EventListener.KEYBOARD)

    除了可以监听键盘按键,还可以是终端设备的各个菜单键,都能使用同一个监听器来进行处理. //给statusLabel绑定键盘事件 cc.eventManager.addListener({ event: ...

  2. 使用JS监听键盘按下事件(keydown event)

    1.监听全局键盘按下事件,例如监听全局回车事件 1 $(document).keydown(function(event){ 2 if(event.keyCode == 13){ 3 alert('你 ...

  3. js监听键盘触发按钮事件,回车提交表单

    /*回车提交表单*/ $(document).keydown(function(event){ if(event.keyCode == 13){ //alert('你按下了Enter'); $(&qu ...

  4. Python监听键盘和鼠标事件

    我们可以利用windows提供的api函数来实现对系统键盘事件和鼠标事件的监听,主要利用的是SetWindowsHookEx函数,这个函数可以允许调用者传入一个钩子函数也叫回调函数,当指定的事件发生时 ...

  5. 阻止事件冒泡js jquery

    jQuery之防止冒泡事件 冒泡事件就是点击子节点,会向上触发父节点.祖先节点的点击事件. 以下是html代码部分: <body> <div id="content&quo ...

  6. js监听键盘事件

    用JS监听键盘按下事件(keydown event)   1.监听全局键盘按下事件,例如监听全局回车事件 1 $(document).keydown(function(event){ 2 if(eve ...

  7. Python使用进程间共享变量来控制两个进程(监听键盘和相机录制)的交互

    我有个简单的应用需求: 1. 该应用随时会监听键盘的输入: 2. 当输入指定键时会控制相机录制的启动和关闭. 监听键盘是一个事件循环,相机录制也是一个循环录制的过程.我试着用 Python 启动两个进 ...

  8. vue如何监听键盘事件中的按键?

    原文地址 背景 在一些搜索框中,我们往往需要监听键盘的按下(onkeydown)或抬起(onkeyup)事件以进行一些操作.在原生js或者jQuery中,我们需要判断e.keyCode的值来获取用户所 ...

  9. Atitit 跨平台异常处理(2)--------异常转换 -----java c# js异常对象结构比较and转换

    Atitit 跨平台异常处理(2)--------异常转换 -----java c# js异常对象结构比较and转换 { "@type":"java.lang.Runti ...

随机推荐

  1. noi题库 1.7 字符串 10到第15题

    10:简单密码 描述 Julius Caesar曾经使用过一种很简单的密码.对于明文中的每个字符,将它用它字母表中后5位对应的字符来代替,这样就得到了密文.比如字符A用F来代替.如下是密文和明文中字符 ...

  2. hadoop 编译代码及运行

    搞定了hadoop配置之后,可以写代码运行了,首先要配一下CLASS_PATH,修改/etc/profile export JAVA_HOME=/usr/lib/jvm/java--openjdk-i ...

  3. Xamarin XAML语言教程ContentView视图作为自定义视图的父类

    Xamarin XAML语言教程ContentView视图作为自定义视图的父类 自定义视图的父类:ContentView视图可以作为自定义视图的父类. [示例14-2]以下将自定义一个颜色视图.具体的 ...

  4. Java加密解密大全

    ChinaSEI系列讲义(By 郭克华)   Java加密解密方法大全                     如果有文字等小错,请多包涵.在不盈利的情况下,欢迎免费传播. 版权所有.郭克华 本讲义经 ...

  5. POJ 2932 Coneology(扫描线)

    [题目链接] http://poj.org/problem?id=2932 [题目大意] 给出N个两两没有公共点的圆,求所有不包含于其它圆内部的圆 [题解] 我们计算出所有点在圆心所有y位置的x值, ...

  6. 【动态规划】bzoj3992 [Sdoi2015]序列统计 10分

    #include<cstdio> using namespace std; #define MOD 1004535809 int a[8001],f[1001][101],n,m,x,S; ...

  7. SQLite 使用技巧

    http://blog.csdn.net/beifengdelei/article/details/7166056 SQLite自增ID自段使用方法为 INTEGER PRIMARY KEY AUTO ...

  8. SpringBoot下文件上传与下载的实现

    原文:http://blog.csdn.net/colton_null/article/details/76696674 SpringBoot后台如何实现文件上传下载? 最近做的一个项目涉及到文件上传 ...

  9. 【docker】查看docker镜像的版本号TAG,从远程仓库拉取自己想要版本的镜像

    要想查看镜像的版本好TAG,需要在docker hub查看 地址如下:https://hub.docker.com/r/library/ 进入之后,在页面左上角搜索框搜索, 例如搜索redis 搜索完 ...

  10. 关于ComboGrid取值为非下拉框数据是,隐藏面板数据清空

    $('#areaGuid').combogrid({ panelWidth: 300, idField: 'guid', textField: 'name', mode: 'remote', meth ...