gpt4 book ai didi

vbscript - 使用 IE 浏览器按下时无法区分 CTRL 和 ALT Gr

转载 作者:行者123 更新时间:2023-12-04 13:52:24 24 4
gpt4 key购买 nike

我正在 vbs 页面中编码,我需要知道何时按下 AltGr。我只能使用 IE 浏览器(我使用的是 1909 版)。
以下是重现该问题的代码示例:

sub document_onkeydown()
MsgBox "key=" & window.event.keyCode
MsgBox "ctrl=" & window.event.ctrlKey
MsgBox "alt=" & window.event.altKey
MsgBox "altLeft=" & window.event.altLeft
end sub
document_onkeydown每次我按下一个键时都会调用 sub 。
我的问题是无法区分 AltGr 键和 Ctrl 键。
如果我按Ctrl:
 window.event.keyCode = 17
window.event.ctrlKey = true
window.event.altKey = false
window.event.altLeft = false
如果我按 AltGr:
window.event.keyCode = 17
window.event.ctrlKey = true
window.event.altKey = false
window.event.altLeft = false
如您所见,这些值是相同的。如何区分按下的两个键?
我可以看到 window.event.altRight不被识别所以我不能使用它。
我正在使用 FRA CAFR(加拿大法语)键盘。

最佳答案

TL;博士
此问题是由您的操作系统 (OS) 和您正在使用的应用程序共同引起的。 IE 只是将 AltGr 视为 Ctrl(或 Ctrl + Alt),您无法改变它。 IE 和许多其他应用程序都是以这种方式开发的。
完整答案
您的计算机检测到被按下的键是您的操作系统和应用程序的组合。听起来您使用某些版本的 Windows 作为您的操作系统?
只要 AltGr 是受支持的键盘并且配置正确,Windows 就会正确检测到它。它的可能性很小,但您可能需要检查您的设置以确保您没有将 FRA CAFR(加拿大法语)键盘视为英语键盘或其他键盘。
您很可能遇到以下一个或多个问题:

  • Windows 有一个怪癖,它通常仅在按下 Right Alt (AltGr) 时才检测到 AltGr。
  • 由应用程序向您报告击键。应用程序开发人员通常有一个坏习惯,将 AltGr 视为 Ctrl 或 Ctrl + Alt。由于您必须使用 IE,我怀疑您使用的 IE 版本(以及可能的所有 IE 版本/Edge)将 AltGr 视为 Ctrl。

  • 来源
    在 SuperUser 上,这是一个类似的问题和答案: In a windows keyboard, is right ALT treated as AltGr?我复制了以下要点:

    But multi-platform apps (e.g. Eclipse IDE or some Firefox plugins)ignore this difference so AltGr+E launches Ctrl+Alt+E so you have noway to type the €. But this is rather a bug which hopefully developersfix, although developers using only US keyboard layout typically don'tcare and resist fixing this (as seen in Eclipse bug tracker).


    未正确处理 AltGr 键实际上是许多应用程序开发人员忽略或决定不解决的一个大问题。看一下用VScode打开的这个问题,例如: AltGr invokes Ctrl+Alt shortcuts #50341 VSCode 是市场上最流行的代码编辑器之一,得到了微软的支持,但他们仍然无法解决这个问题。
    如果您关注问题线程 AltGr 被 Electron 视为 Ctrl + Alt 可能部分是因为 Chromium。用户正在使用一个应用程序 VSCode,但按键正在通过 2 到 3 个不同的抽象层(应用程序以保持简单),其中任何一个都可以选择忽略 AltGr 并将其视为 Ctrl。
    解决方法
    如果您可以并且愿意使用其他软件 SuperUser 有一个可以帮助您的问答: Can I make Ctrl+Alt NOT act like AltGr on Windows?
    答案在这里复制或总结太多,但如果链接失效,解决方案是使用 AutoHotKey (试图)强制正确的 key 通过应用程序。

    关于vbscript - 使用 IE 浏览器按下时无法区分 CTRL 和 ALT Gr,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68089146/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com