zoukankan      html  css  js  c++  java
  • Fn键

    需求分析

    我想开机禁用触摸板.

    方案设计

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

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

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

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

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

    关键类Robot

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

  • 相关阅读:
    Git在eclipse中的使用
    Git协同开发产生的版本冲突
    git&github-远程库的拉取
    【题解】p6160 [Cnoi2020]向量
    【题解】p2388 阶乘之乘
    友情链接
    O(1)求解自然数异或和
    【题解】uva1104 chips challenge
    【题解】p1809 过河问题
    多步操作产生错误,请检查每一步的状态
  • 原文地址:https://www.cnblogs.com/weiyinfu/p/6082190.html
Copyright © 2011-2022 走看看