unity中模拟按键输入模板

新建一个C#脚本,加入如下

using System.Runtime.InteropServices;

public class KeybdEvent : MonoBehaviour {

 

    [DllImport("user32.dll", EntryPoint = "keybd_event")]

    public static extern void Keybd_event(

        byte bvk,//虚拟键值 ESC键对应的是27

        byte bScan,//0

        int dwFlags,//0为按下,1按住,2释放

        int dwExtraInfo//0

        );

调用方法:

Keybd_event(65,0,0,0);

Keybd_event(65,0,1,0);

Keybd_event(65,0,2,0);

这是一个完整的按键从按下到释放的过程。下面有对应键值表,第一个参数可以根据自己所需改。

验证方法:

if (Input.GetKeyDown(KeyCode.A))

        {

            print("按下了A键");

        }

Input.GetKey();     //按下某键后,持续返回 true
Input.GetKeyDown();  //按下某键的一瞬间,返回 true
Input.GetKeyUp(); //抬起某键的一瞬间,返回 true
返回值:bool 类型
参数:KeyCode 枚举(Enum)
KeyCode:键码,保存了物理键盘按键“索引码”。
 

附常用模拟键的键值对照表:

                                                              键盘键与虚拟键码对照表

      字母和数字键     数字小键盘的键       功能键         其它键
      键   键码     键   键码       键   键码     键      键码
      A   65      0   96        F1   112     Backspace     8
      B   66      1   97        F2   113     Tab         9
      C   67                   2   98        F3   114     Clear        12
      D   68      3   99                          F4   115     Enter        13
      E   69      4   100                        F5   116     Shift          16
      F   70      5   101                        F6   117     Control        17
      G   71      6   102        F7   118        Alt          18
      H   72      7   103        F8   119     Caps Lock      20
      I   73        8   104       F9   120      Esc         27
      J   74       9   105       F10  121     Spacebar    32
      K   75                   *   106        F11  122     Page Up      33
      L   76                   +   107        F12  123       Page Down    34
      M   77       Enter  108         --   --       End         35
      N   78                   -    109        --   --         Home      36
      O   79      .   110         --   --         Left Arrow       37
      P   80      /    111         --   --         Up Arrow      38
      Q   81       --   --       --   --       Right Arrow       39
      R   82       --   --       --   --       Down Arrow      40
      S   83       --   --       --   --       Insert            45
      T   84       --   --       --   --       Delete           46
      U   85       --   --       --   --       Help           47
      V   86       --   --       --   --       Num Lock       144
      W   87          
      X   88      
      Y   89      
      Z   90      
      0   48      
      1   49      
      2   50       
      3   51       
      4   52       
      5   53       
      6   54       
      7   55       
      8   56       
      9   57  

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值