问题标签 [acceleratorkey]

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 投票
1 回答
993 浏览

mfc - 在对话框中处理加速器

我错过了什么步骤?

我有一个加速器表:

加速器表

我在我的应用程序类中添加了一个成员变量:

我添加了以下覆盖:

我只使用弹出消息框进行调试,它确认正在检测到按键。

我的菜单资源设置正确:

菜单

所以我的菜单是用菜单处理程序操作的。我已经设置了加载加速器表的程序。例如,如果我在加速器表检测到它时按下Ctrl++ ,为什么我的弹出对话框实际上不处理它?ShiftX

我应该指出,我的主应用程序对话框显示两个编辑器之一。因此,当显示编辑器时,我会加载该编辑器的加速器表。

我错过了什么步骤?为什么对话框不处理加速器?

更新

我找到了这个答案How to make child control handle actuator command of parent CView

我发现如果我HACCEL直接在弹出对话框中添加一个,然后只需使用PreTranslateMessage

有用。

0 投票
1 回答
499 浏览

delphi - 如何删除加速键热键'&'字符?

我正在使用该字符在我的控件'&'中使用加速键。TLabel这样,用户可以按Alt+Character after the &以将控件集中在表单上。

例子:

在这种情况下,MyLabel出现带有'T'下划线的字符并按Alt+T会引起MyEdit焦点。

在此处输入图像描述

MyLabel.Caption没有角色我怎么能得到'&'?是否有任何内置功能可以做到这一点?

我期待得到'Test'字符串而不是'&Test'

0 投票
1 回答
428 浏览

c - 林间空地键盘(转义,箭头)加速器

我正在使用 glade 和语言 C 来开发 GUI。我能够将键盘上的所有数字键和字母键映射到空地按钮作为加速器。但是,我无法映射以下按钮:ESC、向上、向下、向左、向右箭头。

在林间空地,当我在加速器字段中输入向上、向下、向左、向右或 esc 时,没有存储任何内容。但是,如果我按住 CTRL 键入它们,它会将它们存储为主按钮。

在此处输入图像描述

即使在 .glade 文件中,密钥也按照它们应该单独工作的方式存储,但它们仅在我同时按住 CTRL 时才起作用。

我如何在不按住 CTRL 键的情况下使用它们?

0 投票
1 回答
883 浏览

qt - 如何禁用 Qt 按钮标签上的 & 特殊处理?

我继承了一个带有一系列按钮的虚拟键盘系统,每个按键一个。每个按钮的标签都是一个QChar. 显示“符号”键盘时,代码使用“&”QChar作为键标签,但键显示为空白。我确定 Qt 正在处理 '&' 作为快捷键前缀。同样,输入的文本显示在另一个更长的按钮标签上;此标签也将“&”字符作为加速键处理。输入“ABC&DEF”显示为“ABCDEF”,“D”下划线。

我曾尝试使用QT_NO_SHORTCUT#defined 进行构建,但这并没有什么区别。

有谁知道禁用这种特殊处理“&”的简单方法?

0 投票
0 回答
143 浏览

java - Java SWT:加速器快捷方式不适用于弹出上下文菜单

我正在向我的一个小部件 Table 中添加一个弹出菜单。它不工作!如果它们在顶部菜单栏项上,而不是在弹出上下文菜单项中,我只实现了制作工作加速器快捷方式。为什么?

这是我的代码,但该表位于另一个复合材料内的复合材料内:

0 投票
0 回答
2105 浏览

javafx - javafx场景构建器设置加速器将文本编辑器文件菜单下的新菜单项的热键设置为“N”而不是“ALT+N”

我正在使用带有 java fx 的 gluon 场景构建器创建一个文本编辑器。场景构建器版本是 SceneBuilder-10.0.0,与 java 版本“10.0.1”一起使用。我有一个构建文本编辑器的项目。在场景构建器中构建组件时,在“文件”菜单下,我有以下菜单项:新建、打开、保存、另存为和关闭。我正在尝试在场景构建器本身中设置快捷键。有一个使用键设置加速器的选项(在“检查器面板”下的“属性”中)。但是,当我为新菜单项(和其他菜单项)设置它时,它被设置为忽略 ALT+N(请点击链接查看图片)这使得文本编辑器中的快捷键只有“N”而不是“ALT+N”。我也尝试使用 setAccelerator() 在控制器类中对其进行编码,但它仍然给了我类似的结果。我什至下载了新版本的场景构建器,但仍然无法按预期工作。我怎样才能得到快捷键是:

在新菜单项下,而不是当前:

0 投票
1 回答
137 浏览

c# - 使用 Contrl+(Shift)+Tab 在 Pivot Control 中循环浏览选项卡/标题?(UWP)

我正在尝试使用 KeyboardAccelerators 更改 PivotControl 中的页面。我使用了文档中的代码:

和后面的代码:

问题是两个加速器都没有被调用。我可以在实时属性查看器中看到 Ctrl+Tab 已注册(找不到 Ctrl+Shift+Tab)。是否有任何需要覆盖的本机行为?谢谢您的帮助。

0 投票
0 回答
93 浏览

delphi - Firemonkey 加速键

我正在寻找一种方法来注册accelerator key标准方式以外的其他方式,即当带有 的文本accelerator key设置为tLabel.

我用谷歌搜索了很多,并没有找到任何类似的东西。

此外,在其他问题中,建议在设置父级之后在创建时设置Label'sText 属性,但这不起作用,因为Text 和 Parent 属性可能在运行时动态设置。Form'sLabel'sLabel's

假设表单有 a TEdit、 aTLabel和 a ,分别TRectangle命名为和,下面是一个简短的代码示例MyEditMyLabelMyRect

0 投票
1 回答
78 浏览

java - 有人可以帮助我了解 ACCELERATOR_KEY 在 Java 中的工作原理吗?

我试图了解如何使用 ACCELERATOR_KEY 以及它的作用。我在网上找到了一个代码示例,显示了它是如何使用的,但是当我运行代码时,似乎什么也没有发生。

如果我不得不猜测,ACCELERATOR_KEY 似乎允许用户将键盘命令分配给某些东西,但是在这个示例中,当我按下“A”时,什么也没有发生。任何想法或解释将不胜感激!谢谢!

0 投票
2 回答
144 浏览

winapi - MFC:Ctrl-Shift 的加速器不起作用?

我配置了一些加速器,如果只使用Ctrl键它可以正常工作,但如果我让它Shift+Ctrl它不起作用(甚至不会在 MFC 菜单中显示为Ctrl版本的快捷方式)。我用大写和小写字母尝试过的条目没有区别。这是加速器中的条目的样子:

我究竟做错了什么?

编辑:我在上面写了“R”大写,因为两个答案都在谈论这个问题,但我最初有“R”,在放弃并在这里询问之前只改为“r”。但是“R”也不适用于 Ctrl-Shift-R,而 Ctrl-R 可以正常工作吗?

编辑:使用 Spy x64 并检查主窗口,永远不要发送命令。如果我转到拆分器窗口右侧的列表视图并按此顺序按 Ctrl-Shift-R,则生成的唯一内容是:

编辑:

甚至更多数据,我在 thrdcore.cpp 的第 178 行放置了一个条件断点,消息循环所在的位置(行是if (pState->m_msgCur.message != WM_KICKIDLE && !AfxPreTranslateMessage(&(pState->m_msgCur))))。断点是:pState->m_msgCur.message==0x0100 && pState->m_msgCur.wParam==0x52(WM_KEYDOWN for R)。当按下RCtrl-R断点命中时,按下Ctrl-Shift-R断点时不会发生。在间谍跟踪之上,R 从来没有 WM_KEYDOWN,只有一个向上?

编辑:

现在真的越来越奇怪了。我决定进入 VS2017 的键盘设置,看看是否有分配给 Ctrl-Shift-R 的东西,我按下它并没有任何反应,我尝试任何其他字母,如 Ctrl-Shift-T,它工作正常。可以通过我的键盘吗?或者当按下 Ctrl-Shift 时,Win10 x64 中更深层次的东西正在为 R 吃掉 WM_KEYDOWN?

谢谢。