首页 > 编程 > C# > 正文

C#控制键盘按键的常用方法

2020-01-24 01:51:00
字体:
来源:转载
供稿:网友

本文实例讲述了C#控制键盘按键的常用方法。分享给大家供大家参考。具体实现方法如下:

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Runtime.InteropServices;namespace sn设置键盘大小写{  public partial class Form1 : Form  {    const uint KEYEVENTF_EXTENDEDKEY = 0x1;    const uint KEYEVENTF_KEYUP = 0x2;    [DllImport("user32.dll")]    static extern short GetKeyState(int nVirtKey);    [DllImport("user32.dll")]    static extern void keybd_event(byte bVk, byte bScan, uint dwFlags, uint dwExtraInfo);    public enum VirtualKeys : byte    {      VK_NUMLOCK = 0x90, //数字锁定键      VK_SCROLL = 0x91, //滚动锁定      VK_CAPITAL = 0x14, //大小写锁定      VK_A = 62    }    public Form1()    {      InitializeComponent();    }    public static bool GetState(VirtualKeys Key)    {      return (GetKeyState((int)Key)==1);    }    public static void SetState(VirtualKeys Key, bool State)    {      if (State != GetState(Key))      {        keybd_event((byte)Key, 0x45, KEYEVENTF_EXTENDEDKEY | 0, 0);        keybd_event((byte)Key, 0x45, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);      }    }    //开启键盘大写    private void btnOpenCAPITAL_Click(object sender, EventArgs e)    {      SetState(VirtualKeys.VK_CAPITAL, true);    }    //关闭键盘大写    private void btnCloseCAPITAL_Click(object sender, EventArgs e)    {      SetState(VirtualKeys.VK_CAPITAL, false);    }    //开启键盘滚动锁定    private void btnOpenScroll_Click(object sender, EventArgs e)    {      SetState(VirtualKeys.VK_SCROLL, true);    }    //关闭键盘滚动锁定    private void btnCloseScroll_Click(object sender, EventArgs e)    {      SetState(VirtualKeys.VK_SCROLL, false);    }    //开启键盘数字锁定键    private void btnOpenNum_Click(object sender, EventArgs e)    {      SetState(VirtualKeys.VK_NUMLOCK, true);    }    //关闭键盘数字锁定键    private void btnCloseNum_Click(object sender, EventArgs e)    {      SetState(VirtualKeys.VK_NUMLOCK, false);    }  }}

希望本文所述对大家的C#程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表