在java中怎么捕获用户从键盘输入的值

在java中怎么捕获用户从键盘输入的值,第1张

通过输入输出方法取货的值有着很大的局限性,不建议使用。

在Java中有自带的keyPressed时间,是键盘点下事件,在事件方法public

void

this_keyPressed(KeyEvent

e)

中的e就是你键盘点下的键。然后egetKeyCode()用来获取按值。

具体代码如下

添加事件代码

thisaddKeyListener(new

KeyAdapter()

{

public

void

keyPressed(KeyEvent

e)

{

this_keyPressed(e);

}

}

事件代码

public

void

this_keyPressed(KeyEvent

e)

{

egetKeyCode()

}

以上代码都可用编译器自动生成。

如果你用的键盘hook的话,你可以用msdn查询一下里面包含了 keyboardproc回调函数的

参数的解释!!其中 wparam就是所谓的 虚拟件 例如

VK_SPACED代表 空格

在vb中你可以 根据 定义宏或者常量来 给16进制的 数字赋值 然后旧可以和c一样调用

vk_拉, 加分谢谢!!!

在C代码中可设置如下自编的intokey(  )函数,用以接收方向键值。库函数kbhit( )是检测是否有按键被按下,库函数getch(  )是读取键盘按键值的,不需按回车,也不回显。dir是代表方向的变量,根据不同的方向键值,让dir取1到4这四个不同的值。其它的程序段就可根据dir的值让东西朝某个方向移动。方向键按下后会产生2个值,第一个是224,另一个分别为上下左右的72、80、75、77,因此要读取2次值来判断。要包含#include<conioh>

void  intokey(  )

{  int  flag;

   if ( kbhit(  ) )    //判断有键按下时才执行下面的 *** 作

      { flag = getch(  );    //用flag来获取键值

          if (flag==224)

             { flag = getch(  );  //值为224时表示按下了方向键,要再次获取才行

               if ( flag==72 && dir != 2 )  dir = 1;

               if ( flag==80 && dir != 1 ) dir = 2;

              if ( flag==75 && dir != 4 )  dir = 3;

              if ( flag==77 && dir != 3 )  dir = 4;

             }

        if (flag==13)

             {  while( 1 )  if ( ( flag=getch( ) )==13 )  break ;  }

    }

}

注:这个函数来源于某些“贪吃蛇”的代码,略有修改,足可获取方向键值。其中的1、2、 3、4分别对应着上下左右。当flag获得键值后,分两种情况:一是flag=224,此时再次获取键值以判断输入的是4个方向中的哪一个;二是flag=13,表示按下回车键,我们就执行循环,程序暂停,等待再次输入回车,程序继续运行。

bioskey() 不是标准的c/c++函数,是编译器自定义的函数。

键盘键值,可以用 getch(); 获得。

只要记住,F1,F2,箭头 之类的非字符键,按一次键 将产生2个键值,要用2次 getch(); 读入。

普通字符键只产生1个键值,用1 次 getch(); 获得。

例如:

int key,key2;

key = getch();

if (key == 0) {

key2 = getch();

// printf("\nkey value = %02x\n",key2);

switch (key2) {

case 0x003b: printf("F1 key");break;

case 0x003c: printf("F2 key");break;

case 0x003d: printf("F3 key");break;

case 0x003e: printf("F4 key");break;

case 0x003f: printf("F5 key");break;

case 0x0040: printf("F6 key");break;

case 0x0041: printf("F7 key");break;

default: break;

};

};

其它控制键的2个键值 要 查 你计算机的说明 和键盘 设置,同键盘配置(code page) 有关。

简单办法 是 自己测定键值:

key = getch();

printf("\nkey value = 0x%02x -- %d\n",key,key);

key = getch();

printf("\nkey value = 0x%02x -- %d\n",key,key);

以上就是关于在java中怎么捕获用户从键盘输入的值全部的内容,包括:在java中怎么捕获用户从键盘输入的值、VB里如何获得在windows下按键盘的键值、c语言中怎样输入和读取方向键等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9824325.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存