从一段C#代码中调用要按下的键盘键
但这里有一个问题:按键不应局限于流程/应用程序
但是当整个 *** 作系统收到时,当程序处于后台并且不同的表单/程序具有焦点时也是如此
目标:
制作一个锁定CapsLock和Numlock状态的程序
背景:
我有一台笔记本电脑,这两个键让我很沮丧,我想制作一个在后台运行的应用程序,一旦意外启用就禁用CapsLock,并且Numlock永远不会被禁用,我想要为了扩展我对编码的了解,我试图找到解决方案,但没有一个能解决(整个)问题.
using System;using System.Runtime.InteropServices;public class CapsLockControl{ public const byte VK_NUmlock = 0x90; public const byte VK_CAPSLOCK = 0x14; [Dllimport("user32.dll")] static extern voID keybd_event(byte bVk,byte bScan,uint DWFlags,UIntPtr DWExtraInfo); const int KEYEVENTF_EXTENDEDKEY = 0x1; const int KEYEVENTF_KEYUP = 0x2; public static voID Main() { if (Control.IsKeyLocked(Keys.CapsLock)) { Console.Writeline("Caps Lock key is ON. We'll turn it off"); keybd_event(CapsLockControl.VK_CAPSLOCK,0x45,KEYEVENTF_EXTENDEDKEY,(UIntPtr) 0); keybd_event(CapsLockControl.VK_CAPSLOCK,KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,(UIntPtr) 0); } else { Console.Writeline("Caps Lock key is OFF"); } }}总结
以上是内存溢出为你收集整理的c# – 如何通过编程方式调用键盘按键?全部内容,希望文章能够帮你解决c# – 如何通过编程方式调用键盘按键?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)