用C#实现屏幕键盘!
大体思路是这样的:
按键可以使用SendKeys.Send()方法来模拟,主要的难点是输入焦点的处理!
默认情况下,如果你点击屏幕键盘上的按钮,则你的窗体会获得输入焦点,你要输入文字的那个窗体会失去输入焦点,这样也就没有办法输入文字了!
对于这个问题,我们可以通过重写窗体的CreateParams属性,把窗体的扩展样式设置成WS_EX_NOACTIVATE,这样按下窗体上的按钮的时候就不会获得输入焦点了,具体事例代码如下:
public partial class Form1 : Form {protected override CreateParams CreateParams {get { CreateParams cp = base.CreateParams; cp.ExStyle |= (int)0x08000000L; //把窗体设置成WS_EX_NOACTIVATE样式 return cp; } }public Form1() {this.TopMost = true; InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { SendKeys.Send("A"); } }
转载于:https://www.cnblogs.com/xuefeng1982/archive/2009/09/13/1565892.html
用C#实现屏幕键盘!相关推荐
- Win7屏幕键盘 在哪 使用
看微博玩Win7 学用Win7屏幕键盘 2012-03-20 10:07 来源:天极网软件频道 作者:Shiny 责任编辑:杨玲·yesky 评论(1) 小勇最近买了一台预装Win7系统的电脑,除了经 ...
- win7系统怎么打开屏幕键盘
win7系统怎么打开屏幕键盘?我们在电脑没有接入键盘或者键盘失灵等情况下,如果想要输入内容,可以使用系统自带的屏幕键盘.只需要在控制面板中打开屏幕键盘就可以使用了,下面就让我们一起看看win7系统屏幕 ...
- win7系统屏幕键盘打开教程
我们在电脑没有接入键盘或者键盘失灵等情况下,如果想要输入内容,可以使用系统自带的屏幕键盘.只需要在控制面板中打开屏幕键盘就可以使用了,下面就让我们一起看看win7系统屏幕键盘打开教程吧. 1.首先点击 ...
- windows10中屏幕键盘 vs 触摸键盘
最近的测试任务有接触到软键盘的概念.主要是在windows系统下,软键盘又分为屏幕键盘和触摸键盘.下面来看一下这两种键盘的相同点和不同点. 在测试触控大屏设备时,因为没有外接键盘,所以系统自带的触控键 ...
- 如何防止盗号 使用windows自带的 屏幕键盘 OSK
打开运行 输入 OSK 回车,即可打开系统自带的屏幕键盘. 使用这种方式输入密码,可以有效防止键盘记录.
- WIN7 启动屏幕键盘
点击"开始"或按快捷键"WIN",输入"osk"后,按"回车键"确定,就可以启动屏幕键盘. 屏幕键盘 另一种方法是进入& ...
- C#实现屏幕键盘(软键盘 ScreenKeyboard)
要实现一个屏幕键盘,需要监听所有键盘事件,无论窗体是否被激活.因此需要一个全局的钩子,也就 是系统范围的钩子. 什么是钩子(Hook) 钩子(Hook)是Windows提供的一种消息处理机制平台,是指 ...
- 服务器屏幕键盘在哪个文件夹,远程服务器如何启动屏幕键盘
远程服务器如何启动屏幕键盘 内容精选 换一换 华为云帮助中心,为用户提供产品简介.价格说明.购买指南.用户指南.API参考.最佳实践.常见问题.视频帮助等技术文档,帮助您快速上手使用华为云服务. 云堡 ...
- 屏幕键盘开启占用COM1的问题?
问: 我的电脑辅助工具里的屏幕键盘开启后另一个要用到COM1的软件就报错不能找到端口,不开屏幕键盘就没事,,因为电脑只有一个COM口也无法装扩展卡,所以请高手出招了,,或者推荐另一款不占用COM口的屏 ...
最新文章
- 第二期直播《相机标定的基本原理与经验分享》精彩回录
- python range()内建函数
- java前沿技术_Java语言就业前景如何?这4个就业方向都很吃香
- 2017-2018-2 20179202《网络攻防技术》第一周作业
- oracle 删除补全日志组_浅谈Oracle 20c ASM文件组模板技术
- 工作中常用的kafka命令
- 小程序----面试题总结
- 在windows下,编译可访问https的libcurl静态库过程
- 史上最全java架构师技能图谱(下)
- cortex_m0架构(顶层AHB_Lite接口)
- squid 的配置详解 (转)--SeriesIII
- String、StringBuffer 、StringBuilder 的区别(转)
- 怎么把英文字幕翻译成中文?快把这些方法收好
- oracle hot patch david,Hotpatch文件介绍
- 记录每天学习的新知识:LiveData
- 电脑桌面变成了计算机,电脑屏幕黄怎么调整_电脑屏幕突然变黄如何恢复
- SCSI 中定义的provision
- 知乎,成也社区难也社区
- CNN经典分类网络发展历程GoogLeNet、SqueezeNet、ResNet、ResNeXt、DenseNet
- win7 中使用NFS共享
热门文章
- 家里的穿墙的网线不好用了,想换一根,换不了,不走明线有什么好办法?
- Properties集合
- 为SQL Server Always On可用性组配置故障转移群集,存储控制器和仲裁配置
- SQL Server Integration Services(SSIS)中的脚本任务调试
- python爬虫案例-乌托家家具公司数据爬取
- python中filter(),reduce()函数
- ubuntu 中文设置
- BZOJ 3668: [Noi2014]起床困难综合症【二进制+贪心】
- 9-n个人中选k个人的选择方法种类
- TypeScript学习笔记(五) - 泛型