我有一些在Windows XP上使用Alt键的映射。虽然他们工作得很好 左Alt,它们没有右Alt键。
例如,当我按right_Alt + b时,以下映射不执行任何操作, 当按下left_Alt + b时,它会显示一个消息框。
!b::MsgBox You pressed Alt+b.
我想让两个Alt键以相同的方式工作并触发映射 以上。
下面的映射适用于右Alt键,但不适用于左键 Alt键:
<^>!b::MsgBox You pressed right Alt+b.
一种解决方法是复制包含alt键的所有映射,但是 这将显着增加一些脚本的大小。此外,我找到了 在某些情况下,它不起作用。进一步调查表明了 右Alt键有一个奇怪的行为。在只包含的脚本中 以下映射,
^!b::MsgBox You pressed Ctrl+Alt+b.
,按下right_Alt + b时会显示消息框。
我尝试将右Alt映射到左Alt,
<^>!::!
或
<^>!::Send {ALT}
,但它没有解决问题。
答案 0 :(得分:2)
你提到你试图将Right-Alt映射到Left-Alt,但不是你怎么做的。无论如何,当我使用它时:
RAlt::LAlt
MsgBox你按下了Alt + b。按下Right-Alt + b和Left-Alt + b时执行。 你能说出你是如何试图映射两个Alt键的吗?
答案 1 :(得分:0)
由于更好的格式化选项,我将此评论作为答案撰写。
这是我在AutoHotKey_L(1.1.09.01)中使用的脚本,应该在常规AutoHotKey中使用相同的。:
RAlt::LAlt
<^>!b::MsgBox, A You pressed right Alt+b.
^!b::MsgBox, B You pressed Ctrl+Alt+b.
测试1:按 Ctrl + LAlt + b 。结果:MsgBox B,正常行为
测试2:按 Ctrl + RAlt + b 。结果:MsgBox B,由于重新映射而预期
评论;^!b::MsgBox, B...
并再次测试。
测试3:按 Ctrl + RAlt + b 。结果:没有,如预期的那样
评论;RAlt::LAlt
并再次测试:
测试4:按 Ctrl + RAlt + b 。结果:MsgBox A,预计不再重新映射。
最后但并非最不重要。如果按 Ctrl + RAlt + b 或 RAlt + Ctrl <,则行为没有区别/ KBD> + b'/ KBD>。还有一点需要注意:我总是使用LEFT Ctrl 键,而不是右键 Ctrl 键。
你没有得到这些结果吗?
或者当你使 RAlt 等于 LAlt 时,你期望得到不同的结果吗?