标签: autohotkey

如何编写自动热键脚本来切换显示隐藏文件和文件夹设置?

我想使用热键来切换显示隐藏文件和文件夹设置。我想在 windowsXp 和 Windows7 上使用它。

这是我到目前为止所得到的:

#h::
RegRead, Showall_Status, HKEY_LOCAL_MACHINE, Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL, CheckedValue, 
If Showall_Status = 0
RegWrite, REG_DWORD, HKEY_LOCAL_MACHINE, Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL, CheckedValue, 1 
Else
RegWrite, REG_DWORD, HKEY_LOCAL_MACHINE, Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL, CheckedValue, 0
Return
Run Code Online (Sandbox Code Playgroud)

问题是当我运行脚本时它什么都不做。不知道我错过了什么。

windows autohotkey

6
推荐指数
1
解决办法
3166
查看次数

在 AutoHotkey 中将命令绑定到 key-up 和 key-down

我在AutoHotkey脚本中编写了两个函数:fun1()fun2(). 我现在需要绑定fun1()到何时Pause被按下,并绑定fun2()到何时Pause被释放。

例如,我会按住Pause隐藏所有窗口,然后松开Pause以恢复所有窗口。(这个例子不是我的实际目标)。

我怎么能在 AutoHotkey 中做到这一点?

windows-7 keyboard-shortcuts autohotkey key-binding

6
推荐指数
2
解决办法
5583
查看次数

使用 Autohotkey 发送双击

我想使用自动热键将鼠标中键重新映射为双击。

一个简单的重新映射(第 4 个羊肉 -> 中间按钮)使用效果很好,XButton1::MButton但我找不到重新映射按钮以发送左键双击的方法。

我已经尝试过MButton::LButton 2MButton::LButton & LButton但那些没有用(显然这种语法仅用于不同的 AHK 语句,而不用于重新映射)。

remapping autohotkey double-click

6
推荐指数
1
解决办法
8126
查看次数

对同一个键的大写和小写使用不同的映射

我正在尝试使用 AutoHotkey 以尊重大写和小写的方式映射一些组合键,但我无法让它工作。例如:我想要:

AppsKey + L 键入“a” AppsKey + Shift + L 键入“b”

我失败的尝试:

A. 两种组合都只给出“b”(“+”似乎是shift的符号):

AppsKey & l::Send a
AppsKey & +l::Send b
Run Code Online (Sandbox Code Playgroud)

B. 不会编译并给出“无效热键错误”:

AppsKey & l::Send a
AppsKey & Shift & l::Send b
Run Code Online (Sandbox Code Playgroud)

C. 不会编译并给出“重复热键错误”(这是有道理的,因为热键定义似乎不区分大小写):

AppsKey & l::Send a
AppsKey & L::Send b
Run Code Online (Sandbox Code Playgroud)

AutoHotkey 中可以进行这种类型的映射吗?我缺少什么才能使它工作?

autohotkey

6
推荐指数
1
解决办法
1518
查看次数

如何将单独按下一个修饰键映射到它自己的功能或 Windows 上的映射?

今天在黑客新闻上有一篇关于自定义快捷键的巧妙文章。

作者讨论了一种在没有修饰符的情况下按下 CTRL 时将修饰键(例如 CTRL)重新映射到 ESC 的技术。这在 vim 中很有用,因为您需要按 ESC 的频率。

他描述的另一种技术是将(左括号映射到左 shift 键和)右 shift 键。

如果在按住 shift 时按下另一个键,则 shift 键的行为正常。

作者描述了他在 OSX 上使用的软件,但有没有办法在 Windows 上做到这一点?

我听说过 AutoHotKey 但它似乎只在按下简单键时触发宏,而不是这需要的条件状态开关。

windows-7 keyboard-shortcuts productivity autohotkey

6
推荐指数
1
解决办法
1589
查看次数

AutoHotkey - 滚动两个 PDF 文档

我正在尝试制作一个同时滚动所有打开的 PDF 文档的脚本。问题是,除非我专门命名每个必须滚动的窗口并将操作发送给它,否则我无法让它工作。此外,在当前状态下,我需要在另一个窗口(例如:记事本)中捕获滚动事件,但这实际上没问题,因为我可能还想手动滚动一些 PDF,然后恢复同步滚动。

这是我的工作流程:

  1. 打开 2 个或更多 PDF 文档。
  2. 打开记事本文件并开始滚动到记事本文件。

结果:所有打开的 PDF 开始滚动。

这是我的代码(从interwebz借来的:)

WheelDown::
SetTitleMatchMode, 2
IfWinActive, Notepad ; Replace 'SafariTitle' by the title of the safari windows
{
        CoordMode, Mouse, Screen
        WinGet, active_id, ID, A
        IfWinExist, Adobe
        {
                Send {WheelDown}
                WinActivate ; Automatically uses the window found above.
                Send {WheelDown}
                Send {WheelDown}
                WinActivate, ahk_id %active_id%
        }

}
Else
{
        Send {WheelDown}
}
return

WheelUp::
SetTitleMatchMode, 2
IfWinActive, Notepad ; Replace 'SafariTitle' by the title of the safari …
Run Code Online (Sandbox Code Playgroud)

pdf autohotkey adobe-acrobat

6
推荐指数
1
解决办法
7915
查看次数

如何发送/输入冒号

我希望将以下字符串发送到 cmd:

C:\xampp\mysql\bin\mysql.exe -u root
Run Code Online (Sandbox Code Playgroud)

问题是发送冒号,

我试过

Send, c:Send, \xampp\mysql\bin\mysql.exe -u root
Run Code Online (Sandbox Code Playgroud)

Send, c{:}Send, \xampp\mysql\bin\mysql.exe -u root
Run Code Online (Sandbox Code Playgroud)

但他们都变成了

Send, c;Send, \xampp\mysql\bin\mysql.exe -u root
Run Code Online (Sandbox Code Playgroud)

autohotkey

6
推荐指数
1
解决办法
2763
查看次数

使用 Autohotkey 在 Windows 8 中禁用功能键

我需要使用的AutoHotkey来禁用功能键(F1- F12)对我的联想ideapad U310,运行Windows 8,我需要这一点是为了使用F1-F12 在应用程序中,如Ableton现场。此外,如果可以在 Fn 键(参见下面的 nb)后面对 Windows 8 的库存功能进行编程,那就更好了。

autohotkey 程序本身运行良好,我已经成功地尝试了很多东西。但出于某种原因,我无法禁用功能键或重新映射它们。默认情况下,Windows 8 中的功能键被编程为执行诸如打开 Charm、控制音量等操作。

F10例如,在 Windows 8 中,该键可打开第二个屏幕选项。这意味着我不能将它用于其他目的,因为每次按下它都会打开第二个屏幕选项。音频软件,我使用将严重需要释放那些F1-F12从Windows键8功能,如第二个屏幕的例子。简单地说:我希望功能键在默认情况下什么都不做,因此可以“可用”某些软件使用。

我尝试了基本的“F1::Return”,但没有。有任何想法吗?任何帮助都意味着很多:)

那么甚至可以使用自动热键覆盖这些 Windows 8 界面功能吗?

注意:Mac OS 中有一个功能,我实际上试图在这里模仿。在 Mac 电脑上,你可以选择在 Fn 按钮后面有功能键的功能,所以你必须总是按 Fn+功能。通过这种方式,用户可以执行操作系统功能,但仍然可以在任何软件中使用没有 Fn 按钮的功能键(例如F5在互联网浏览器上按下刷新等)。

keyboard-shortcuts autohotkey windows-8

6
推荐指数
1
解决办法
9万
查看次数

AutoHotKey 脚本在打开时自动关闭窗口

如何使用 AutoHotKey每次弹出时自动关闭名为Microsoft Office Wizard 的弹出窗口。可以使用 Alt+F4 或单击“关闭”按钮关闭窗口。我希望这个脚本在后台运行并在每次打开时关闭弹出窗口。非常感谢

windows-7 autohotkey

6
推荐指数
1
解决办法
6202
查看次数

在 Windows 8 的 AutoHotkey 中检测触摸屏按下

我使用的是运行 Windows 8.1 32 位的 Dell Venue 8 Pro。我正在尝试使用 AutoHotkey 将屏幕的某些区域映射到键盘上的某些按钮,以便能够使用触摸屏来控制某个已经存在的弹球游戏。我的目标是在触摸屏幕的左半部分时按 A,然后按右半部分的 B(屏幕分辨率设置为 640x480)。这是我写的脚本:

~LButton::
MouseGetPos, x,y
if (x > 0 and x < 320)
    Send {A}
if (x > 320 and x < 640)
    Send {B}
return
Run Code Online (Sandbox Code Playgroud)

但是,它似乎根本无法识别触摸屏按压。似乎触摸屏按压与普通鼠标点击不同。如何使用 AutoHotkey 识别触摸屏按键,或者是否有其他解决方案可以解决我的问题?

编辑:我开始认为 AutoHotkey 无法在这里完成我想要完成的工作。如果有人能找到产生相同结果的替代方法(触摸屏幕区域时按下键盘按钮),我会接受答案。

autohotkey touchscreen windows-8

6
推荐指数
1
解决办法
6694
查看次数