问题标签 [modifier-key]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1777 浏览

windows - 将 Numpad 与修改键一起使用会表现出奇怪的行为

我有一个键盘事件侦听器,我正在侦听数字键盘键码(1 到 9),以便激活数字锁定;这很好用。但是,在我的应用程序中,我还希望允许使用修饰键 (CTRL) 和数字键盘键。奇怪的是,当按住 CTRL 时,按 1 或 3 不会产生任何键盘事件,而 2 和 4 - 9 会产生预期的事件。 经过一些谷歌搜索后,我看到了有关此问题的其他参考资料,因此我认为这不一定是特定于 Flash 的,但我还没有找到任何答案。

我尝试使用 SHIFT 作为修饰符,但这只会导致从数字键盘生成键码,就好像数字锁定已关闭(例如,SHIFT+Numpad1 返回 End 键码,无论数字锁定状态如何) - 显然这是故意的 Windows行为。由于altcodes , ALT 不是小键盘的选项。

关于如何让 CTRL+Numpad1 和 CTRL+Numpad3 生成键盘事件的任何想法?或者对他们为什么不这样做的任何解释?

编辑:我尝试在 Firefox 中使用这些组合键,如下 enriquein 建议的那样,所有组合键都可以正常工作,这让我相信这可能是 Flash 特定的问题,或者至少不是硬件问题。

0 投票
8 回答
44940 浏览

c# - 如何在 C# 中使用多个修饰键

我正在使用 keydown 事件来检测按下的键,并为各种操作提供多个组合键。

由于某种原因,我点击Ctrl++的组合键Shift不起作用C。我重新订购了它们,并将其放在顶部,认为这可能是来自Ctrl+的干扰C,甚至删除了Ctrl+C以查看它是否导致问题。它仍然不起作用。我知道这可能很简单,但不能完全理解它是什么。我所有的 1 修饰符 + 1 组合键都可以正常工作,只要我添加了第二个修饰符,它就不再起作用了。

0 投票
3 回答
2963 浏览

qt - Qt:使用 Modkey(Shift、CTRL 等)检测双击

如何检测在按住修饰键时是否双击 QWidget(在我的情况下为 QStatusBar)?

我可以重载void QWidget::mouseDoubleClickEvent ( QMouseEvent * event )以获得双击,但是当小部件可能没有焦点时,我如何确定它是否接收到关键事件?

0 投票
2 回答
392 浏览

javascript - jQuery:按住修饰符时链接更改 - 但链接停止工作

我正在尝试创建一个链接,该链接通常指向 URL 1,并在按住 shift 键时指向 URL 2。我到达了这个代码示例,它正确地切换了链接(如将鼠标悬停在链接上时在浏览器状态栏中显示的那样),但单击 URL 2 不起作用:浏览器什么也不做。没错:存在一个链接,但单击它并没有做任何事情。

在 Firefox 3.6.6 和 Safari 5.0 中尝试过,两者的结果相同。

有什么提示吗?谢谢!

0 投票
1 回答
6772 浏览

vim - 如何重新映射vim中的(控制)修饰键?

我避免在我的笔记本电脑上使用“控制”键,<C>用 vim 的说法。我讨厌苹果把它放在哪里。我真的很想使用 control 重新映射所有 vim 命令,而不是使用“command”,但这在 Mac 上似乎是不可能的,尽管我已经读过。我已经读过我应该用它<Leader>来设置这样的映射,但我想避免重新<C>映射我可以在我的 .vimrc 中找到或想到的每一个映射,只是为了忘记一些并让我的 .vimrc 膨胀。

我想避免 xmodmap 或超出 .vimrc 范围的解决方案,因为我想保持跨系统同步的配置文件的兼容性。

我真正想做的是将备用键(可能,)指定为等效于<C>.

0 投票
4 回答
3065 浏览

windows - 向 Windows 添加新的修饰键需要什么?

据我所知,“Shift”、“Alt”和“Control”的概念是通过操作系统 API 从键盘本身很好地硬编码的。有时我看到 Windows 键被用作修饰键,但它似乎并没有注册为“真正的”修饰键,就像键盘上的任何键一样。

但是一个人可以添加一个新的修饰键吗?也许是为了带回太空学员键盘而疯狂而疯狂的努力?除了物理上修改过的键盘(或者可能只是重新映射一些未使用的键)之外,还需要什么?新司机?新的 API 调用?完全重写操作系统?

我想这种事情在开源操作系统上比在 Windows 上做起来容易得多,是吗?

0 投票
1 回答
495 浏览

silverlight-4.0 - SL4 的 ListBoxDragDropTarget 修饰键(Shift、Alt、Ctrl)功能。

我最近开始使用 Silverlight 4,在我的一个项目中,我需要使用拖放功能。

我用的是ListBoxDragDropTarget,这不是问题。但是我想知道修饰键的默认用途是什么。我能够理解这Ctrl意味着复制,但找不到 , 或组合它们的用法AltShift我看到当我单击Ctrl+时Shift,图标会更改,但我不明白它的作用)。

我在网上搜索了一下,但没有找到对默认行为的任何解释。

0 投票
1 回答
1386 浏览

uitextview - 如果在 uitextview 中按下 shift 键(修饰键),则检测/获取通知

我试图弄清楚是否有任何方法可以检测是否按下了键,或者在按下键shift时是否发送了任何通知shiftUIKeyboard

由于它是修饰键,因此不会调用shift按键。

0 投票
4 回答
9735 浏览

objective-c - 如果按下了某个修饰符但没有其他修饰符,则检查 NSEvent 的修饰符标志

我刚刚尝试了addLocalMonitorForEventsMatchingMask:handler:NSEvent 中的方法并遇到了以下问题:如何确定是否按下了某些修饰符?

将此问题置于上下文中的一个简短示例:我想听快捷键“⌘+W”。因此,我编写了以下代码:

这很好用,但是即使按下了更多修饰键,也会触发快捷方式,例如“⌃+⌘+W”或“⇧+⌃+⌥+⌘+W”。有没有办法绕过这个?

一个简单的解决方案是检查所有其他修饰键并确保它们没有被按下。这似乎很乏味且容易出错 - 除了它现在与一元“&”一样丑陋之外。此外,如果(出于某种原因)在键盘布局中添加了另一个修饰键,您可能会遇到麻烦。

一如既往,我感谢任何建议。

0 投票
3 回答
32598 浏览

python - 如何检查是否按下了键盘修饰符(Shift、Ctrl 或 Alt)?

我正在使用Qt Creator构建一个 UI,我希望按钮使用不同的修饰符执行不同的操作。所以我想我可以调用具有动态字符串属性的函数,这些函数将根据修饰符执行操作。

有没有更简单的方法来做到这一点?