问题标签 [hotkeys]

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 投票
2 回答
357 浏览

c# - 防止在 Windows 中出现 UAC 提示后热键丢失

背景

  • 我用 C# 编写了一个注册 Windows 热键的应用程序(当我按下 PRINTSCREEN 时它会截屏)
  • 我注册热键、捕获屏幕等的代码都可以工作。那里没有问题。

问题

  • 如果我的应用程序正在运行(并且成功注册了热键),然后我做了一些导致 UAC 提示的事情 - 通常这是在例如我启动一些安装程序时引起的 - 那么热键就会丢失。Lost = 之后,当我点击 printscreen 时,该事件永远不会回到我的应用程序中。我必须关闭应用程序并重新启动。

问题

  • 为什么热键丢失了?
  • 注册热键时,我可以和应该做些什么不同的事情?

笔记

  • 我已经在其他注册热键的应用程序中看到了这种行为 - 使用管理员权限使用热键运行应用程序可以防止热键丢失
  • 注册热键时,我可以和应该做些什么不同的事情?
  • 避免像 setup.exes 这样导致 UAC 提示的应用程序不是一个可行的解决方案 - 我截取屏幕截图的全部目的是记录多个应用程序的设置体验
  • 我有一个解决方法,我可以使用管理员权限启动应用程序 - 但我宁愿避免让用户这样做

代码

我的代码与此非常相似:http: //www.codekeep.net/snippets/ea68475b-c33e-4a71-8008-90f63d7e918d.aspx

0 投票
1 回答
285 浏览

winapi - 热键控件内容发生变化时可以通知父窗口吗?(win32)

我创建了一个使用设置窗口,它包含一个热键控件和一个应用按钮。正常情况下,按钮是灰色的,但我希望当用户在热键控件中设置新的热键时它可以使用。

我在 MSDN 中阅读了关系内容,但如果热键更改,似乎热键控件不会通知其父窗口。

我不想每 0.5 秒查询一次热键(并与原始值进行比较)。

任何建议表示赞赏!

0 投票
3 回答
6292 浏览

c# - MVVM 中 Silverlight 的热键命令?

我正在尝试根据 Silverlight 中的击键来触发命令。据我了解,您不能在 Silverlight 中使用 AccessKey 或 AcceleratorKey。此外,看起来可能有用的附加属性 InputBindings 也不起作用。

我开始在其他地方寻找。看起来 Prism 是让命令在 Silverlight 中工作的方法,所以我检查了一下。但是,它们只有一个 Click 处理程序,这甚至不是设置关键命令的有用起点。

我只是错过了棱镜的某些部分吗?或者是否有一种使用 MVVM Silverlight 处理热键的良好标准方法?

0 投票
2 回答
2975 浏览

c# - 捕获 Alt+PrintScreen 热键和剪贴板内容

我在 alt+printscreen 上设置了捕捉热键。它完美捕捉,但缓冲区中没有任何内容 - 没有图像。捕捉热键后如何从 Clipboard.GetImage() 获取图像?

这是代码。

错误在哪里?

0 投票
4 回答
3748 浏览

java - 为 JOptionPane 对话框设置助记符和热键

是否可以为 JOptionPane 对话框中的按钮分配热键和助记符?我希望能够在 JOptionPane 生成的带有选项 Yes、No 和 Cancel 的消息对话框中,按 Y 击中 Yes 按钮,N 击中 No 按钮并退出以激活退出按钮。同样,在带有“确定”和“取消”按钮的对话框中,我希望能够通过 Enter 和 Escape 激活它们。

我已经尝试将 JButtons 传递到 JOptionPane 的按钮对象数组中,并设置了 Mnemonics。助记符起作用,并且按钮在对话框中正确显示,但是,当它们被激活时,它们不能正常工作。最明显的是他们没有处理对话框。

将热键和助记符添加到 JOptionPane 对话框的按钮的正确方法是什么?

0 投票
3 回答
7801 浏览

windows - 如何劫持 Caps Lock 键进行剪切、复制、粘贴键盘操作

这是我想要完成的事情:

  1. 要复制,按下并松开Caps Lock一次
  2. Caps Lock要粘贴,请快速按下并释放两次
  3. 要剪切,请按Ctrl+Caps Lock

我想这样做的原因经常是我发现自己低头按下正确的 X/C/V 键,因为它们都彼此相邻(至少在 QWERTY 键盘上)。

如何在标准键盘(使用 Windows)上执行此操作,以便它适用于整个系统并对所有应用程序(包括 Windows 资源管理器)透明?如果无法使用标准键盘,您认为任何“可编程数字键盘”都可以做到这一点吗?

在上面,“透明”是指“应用程序永远不会知道这个按键被翻译。它只获取常规的Ctrl+ X/ C/V代码,因此它的行为没有任何问题”。

附言。不确定适合此问题的所有标签,因此请随意添加更多标签。

解决了。更新:感谢@Jonno_FTW 向我介绍 AutoHotKey。我通过在 My Documents 文件夹的默认 AutoHotKey.ahk 文件中添加以下 AHK 脚本来管理所有三个要求:

那很简单!

没有完全解决。更新: 以上内容在记事本中有效,但不适用于资源管理器(例如复制文件)或 MS Office(即使文本复制也不起作用)。因此,我需要深入研究 AutoHotKey 或其他解决方案。当我找到一个解决方案时,会在这里发布一个解决方案。同时,如果有人可以让 AutoHotKey 为我所需要的一切工作,请回复!

全部解决。更新: 我所要做的就是将大写的“C”/X/Z 更改为小写的“c”/x/z。所以发送 ^C 变成了发送 ^c。它现在适用于所有程序,包括 Windows 资源管理器!修复了上面的代码以反映此更改。

0 投票
4 回答
2811 浏览

c# - 从 Windows 登录屏幕挂钩热键

我建立了一个挂钩键盘的程序,当一些热键按下它打开门(连接到计算机的 COM1 串行端口)。

这工作正常,直到我锁定计算机(winkey+L)。我希望能够在登录屏幕上使用相同的热键打开门。

我使用 Windows XP 和 C#。

我怎么做?

谢谢。

0 投票
2 回答
6718 浏览

cocoa - Cocoa NSStatusBar 全局热键

我创建了一个位于系统状态栏中的 NSStatusBar 可可应用程序。

我想分配一个热键,以便在按下它时切换我的应用程序并显示菜单。

这可能吗?,在我的搜索和实验中,我发现了几种不同的分配全局热键的方法,当您的应用程序在后台时可以按下这些热键,但我找不到任何方法来使菜单显示有问题。

这可能吗?,如果有人认为分配全局热键的方法是最好的,请发布。

谢谢。


我发现的热键教程之一是http://dbachrach.com/blog/2005/11/program-global-hotkeys-in-cocoa-easily/供任何感兴趣的人使用。

0 投票
8 回答
64906 浏览

javascript - Ctrl+Enter jQuery 在 TEXTAREA

当光标在TEXTAREA内并按下Ctrl+时,如何触发某些内容?Enter使用jQuery。谢谢

0 投票
3 回答
2415 浏览

wpf - 没有修饰符的WPF热键触发

我有一个 WPF 窗口,其中包含一个名为 Cancel 的按钮。在一般情况下,我希望用户能够按 Alt+C 取消他们的操作并关闭程序。因此,该按钮的标题为“_Cancel”。

问题 1:在 Window_Load 期间,如果我在没有修饰符的情况下按 C,则会触发 Cancel_Clicked 事件,并且程序会关闭。

问题 2:我的程序打开后,假设我没有与窗口上的任何东西交互,按 C 不带修饰符将关闭程序。

请注意,由于问题 2,使用某种布尔值来跟踪“加载”状态将不起作用。

我究竟做错了什么?有任何想法吗?