【发布时间】:2021-03-25 15:32:35
【问题描述】:
背景
我有以下 AHK 脚本(从 https://medium.com/@dakshin.k1/enable-3-finger-gesture-for-click-and-drag-on-windows-and-linux-cd7165b66851 获得):
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
#SingleInstance force
; Enable three-finger drag
drag_enabled := 0
+^#F22::
if (drag_enabled) {
Click up
drag_enabled := 0
} else {
drag_enabled := 1
Click down
}
return
LButton::
if (drag_enabled) {
Click up
drag_enabled := 0
} else {
click
}
return
这应该可以在 任何 Windows 10 笔记本电脑的触摸板上启用 Mac 风格的三指拖动,但需要以下三个步骤:
- 执行三指点击。
- 将鼠标指针移动到您想要的任何位置。如果拖动一个窗口,窗口应该(并且确实)在您移动它时跟随光标。如果选择文本,您应该会看到文本像您期望的那样突出显示,甚至两指滚动也应该有效(并且确实有效)!
- 执行单指点击以完成模拟手势。
问题
我对 AHK 能够做到这一切感到非常惊讶,所以它没有完全 像我希望的那样工作也就不足为奇了。在一段无法确定的时间后,我无法再用我的触控板正常点击/点击。
我的问题
-
+^#F22实际上做了什么?文档和我对 AHK 的有限知识似乎暗示它将设置Shift+Ctrl+Win+Whatever F22 means作为启用上述步骤 1. 的热键。但它是否也启用了第 2 步?如果没有... - AHK 如何能够跟踪鼠标指针,保持拖动动作继续进行,同时从触摸板上移出任意数量的手指并重新接触触摸板是可能的? 脚本的哪几行调用了哪些 Win32 API 函数?
- 如何解决触摸板点击问题(我感觉答案是“你不能”,但请证明我错了)?
我已经在这上面花了大约 2 个小时,阅读文档并尝试重新熟悉 AHK,因为自从我上次使用它已经过去了一个时代(即便如此,我从来没有做过任何事情一半 这么高级)!
【问题讨论】:
标签: windows-10 autohotkey