精选文章 Fn键

Fn键

作者:dejing6575 时间: 2021-02-07 01:39:47
dejing6575 2021-02-07 01:39:47
【摘要】需求分析 
 我想开机禁用触摸板. 
 方案设计 
 安装驱动:比较麻烦,驱动也不一定支持开机禁用触摸板.编程实现,让一段代码开机禁用触摸板
 编程实现也分好几种方法: 
 使用windows API禁用触摸板,这需要了解windows的API.模拟键盘按键,开机就通过按键禁用触摸板.(如是你闻,这正是我想说的).这种方法非常好.  解决一个问题有两种解决方案:模拟人的行为和真正的去执行操作...

需求分析

我想开机禁用触摸板.

方案设计

  • 安装驱动:比较麻烦,驱动也不一定支持开机禁用触摸板.
  • 编程实现,让一段代码开机禁用触摸板

编程实现也分好几种方法:

  • 使用windows API禁用触摸板,这需要了解windows的API.
  • 模拟键盘按键,开机就通过按键禁用触摸板.(如是你闻,这正是我想说的).这种方法非常好.

    解决一个问题有两种解决方案:模拟人的行为和真正的去执行操作.例如提交表单这个动作可以用selenium模拟浏览器提交表单,也可以使用httpClient库提交表单.通常,模拟人的行为实现起来简单稳定,可靠性高,对操作对象的依赖程度比较低(只要用户接口不变,我就无需重写代码).一言以蔽之,通过用户接口来模拟人的行为,往往能够独辟蹊径,巧妙简洁的解决问题.

我的电脑禁用/启用触摸板快捷键是Fn+F6.如果你的电脑这个快捷键不包含Fn,那是最好.否则本文描述的方案不可行.

关键类Robot

使用java.awt.Robot类可以模拟人的很多操作,包括按键,鼠标,屏幕截图等各种操作.
那么问题来了,在java中KeyEvent.VK_...没有Fn键.因为Fn键属于用户的私有按键,涉及系统关键操作,不允许程序控制这个按键.你可以编一段代码测试一下,当按下键盘键时,输出键值,会发现按Fn时,啥都不输出,好像没有按键一样.
解决方案只剩下一种了,通过JNI调用操作系统底层接口.

转载于:https://www.cnblogs.com/weiyinfu/p/6082190.html

分享文章到微博
分享文章到朋友圈

上一篇:Matlab - 矩阵基本操作

下一篇:C/C++ - 与、的区别

CSDN

CSDN

中国开发者社区CSDN (Chinese Software Developer Network) 创立于1999年,致力为中国开发者提供知识传播、在线学习、职业发展等全生命周期服务。
Fn键介绍:华为云为您免费提供Fn键在博客、论坛、帮助中心等栏目的相关文章,同时还可以通过 站内搜索 查询更多Fn键的相关内容。| 移动地址: Fn键 | 写博客