C#控制键盘按键(大小写按键等)的代码
将代码过程较好的代码段做个记录,如下的资料是关于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_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#控制键盘按键(大小写按键等)的代码的更多相关文章
- MCU 51-4 独立按键&编码按键
独立按键: 按键的按下与释放是通过机械触点的闭合与断开来实现的,因机械触点的弹性作用,在闭合与断开的瞬间均有一个抖动的过程,抖动必须清除. 按键按下一次,数码管数值加1: #include<re ...
- 入门级的按键驱动——按键驱动笔记之poll机制-异步通知-同步互斥阻塞-定时器防抖
文章对应视频的第12课,第5.6.7.8节. 在这之前还有查询方式的驱动编写,中断方式的驱动编写,这篇文章中暂时没有这些类容.但这篇文章是以这些为基础写的,前面的内容有空补上. 按键驱动——按下按键, ...
- AD按键-矩阵按键:
原理:利用数组分压+AD采集: 优点:一个IO口可以做成多个按键,节省IO口(矩阵键盘在>4时优点才能体现出来):可备用作为AD基准输入. 缺点:不能做成组合按键(或者电阻要精确选择):且离IO ...
- Python3 tkinter基础 event keysym 查看按键的按键名
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- AD按键-矩阵按键-独立按键:
原理:利用数组分压+AD采集: 优点:一个IO口可以做成多个按键,节省IO口(矩阵键盘在>4时优点才能体现出来):可备用作为AD基准输入. 缺点:不能做成组合按键(或者电阻要精确选择):且离IO ...
- 监听Ueditor的 iframe中的按键,按键组合事件(Ctrl+s)
个人博客 地址:https://www.wenhaofan.com/a/20190716214214 监听按键事件 ueditor.ready(function() { UE.dom.domU ...
- 按键显示按键编码 keycode
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- Qt之键盘事件监听-实时响应大小写Capslock按键
目录 一.开篇 二.效果展示 三.实现思路 1.重写QLlinEdit 2.全局应用程序事件 3.windows钩子 四.相关文章 原文链接:Qt之键盘事件监听-实时响应大小写Capslock按键 一 ...
- Linux按键驱动程序设计--从简单到不简单【转】
本文转载自:http://blog.csdn.net/coding__madman/article/details/51399353 混杂设备驱动模型: 1. 混杂设备描述 在Linux系统中,存在一 ...
随机推荐
- maven 安装本地jar
mvn install:install-file -Dfile=D:/open-api-sdk-2.0.jar -DgroupId=com.jd.open -DartifactId=jd-api-sd ...
- Polly 熔断策略
熔断策略主要以 CircuitBreaker 来完成. 工作原理 熔断器可以被看作为一个主要含有三个状态的状态机 如果以电路开关来看: 开关闭合对应 CLOSED 状态, 开关打开对应 OPEN 状态 ...
- LaTex Verbatim 环境下使用数学符号
参考: Write math and make a box with alltt environment LaTex Verbatim 环境下使用数学符号 在 Verbatim 环境下使用数学符号,需 ...
- sourcetree,创建工作流报错:Fatal: Not a gitflow-enabled repo yet. Please run 'git flow init' first.-》解决办法
1.打开项目下.git/config文件,或者如下图操作: 2.打开config文件以后,删除所有 [gitflow *条目并保存文件 3.关闭并重新打开sourcetree 4.仓库->Git ...
- 历届试题 小数第n位 (求循环节)
只要被除数出现重复,就表明循环节出现了.即使商不是循环小数,也可以补0作为循环节,这样就可以统一处理了. AC代码 #include <stdio.h> #include <vect ...
- Collectors类中的静态工厂方法
工厂方法 返回类型 用于 toList List<T> 把流中的所有数据元素收集到List集合中. stream.collect(toList()); toSet Set<T> ...
- Qt5OpenGL.顶点像素大小设置
1. 2. // ZC: 像素点的大小 设置:2种方式: // ZC: (1)代码指定方式 // ZC: (2)GLSL种指定方式[A]只能在顶点着色器种指定,不能在片原着色器种指定[B]代码中还要指 ...
- java中的默认类型+spring
默认引用类型 Integer Character String(包装类)... private Integer age ; 默认是null 默认基本类型 int char string.privit ...
- python多线程采集
import requests import json import threading Default_Header = { #具体请求头自己去弄 } _session=requests.sessi ...
- jquery等待特定元素加载再执行相关函数
jQuery.fn.wait = function (func, times, interval) { var _times = times || 100, //100次 _interval = in ...