![应用程序记住在按下 Alt+Tab 键后按下了 Alt 键](https://linux22.com/image/1508955/%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E8%AE%B0%E4%BD%8F%E5%9C%A8%E6%8C%89%E4%B8%8B%20Alt%2BTab%20%E9%94%AE%E5%90%8E%E6%8C%89%E4%B8%8B%E4%BA%86%20Alt%20%E9%94%AE.png)
当我Alt+Tab切换离开某个应用程序,然后返回该应用程序时,Alt第一次按下该键时不起作用。以下是重现方法
- 打开 Chrome 和 Notepad++
- 使用你喜欢的任何方法激活 Notepad++
- Alt+Tab激活 Chrome
- Alt+Tab激活 Notepad++
- 按下Alt键一次
Notepad++ 中的菜单未激活。
对于我来说,使用大多数应用程序都可以重现这种情况。不过,Notepad++ 让我知道发生了什么。当我Alt+Tab离开 Notepad++ 时,我可以看到菜单选择器(下划线)是可见的。即使应用程序处于非活动状态以及我重新激活它时,它们仍然可见。当我返回应用程序时,Alt 键会删除菜单选择器 - 这与我想要的效果相反。
到目前为止,我尝试过的唯一不会发生这种情况的应用程序是 SQL Server Management Studio(但我只尝试了大约十几个)。无论我如何激活和停用 SSMS,第一次按下 Alt 键都会激活菜单。
在 Notepad++ 中很容易看到菜单选择器被激活,但在使用 RibbonUI 的应用程序(如 Office)中则不那么容易。它不会像Alt在应用程序中单独按下一样显示 Ribbon 工具提示,但效果是一样的。也就是说,当我返回应用程序时,我必须按Alt两次才能看到工具提示。
看起来好像我在离开应用程序之前激活了菜单,但这并不完全正确。这是某种奇怪的第三种状态。除此以外的所有其他键都按Alt预期工作。如果我在 Notepad++ 中激活菜单,然后按下向下箭头键,文件菜单就会展开。但如果我Alt+Tab离开 Notepad++,然后重新激活,向下箭头会按预期将光标向下移动一行。因此,向下箭头不一定一定会Alt持续存在,因此向下箭头仍会展开菜单。
我想Alt+Tab离开 Excel,Alt+Tab返回 Excel,按Alt+ A+ C,并且不出AC
现在活动单元格中。
屏幕截图:从 Notepad++ 中按 Alt-tab 键时,您可以看到菜单中的热键带下划线
在 Excel 中按 Alt-Tab 键时,不显示任何工具提示
我无法向您展示当我返回 Excel 并按下 Alt 时为什么什么都没发生,因为什么都没发生。如果您能想到想要查看的特定屏幕截图,我会提供它。
答案1
打开注册表并转到以下项:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer
请注意,您必须在Explorer
项中而不是在其子树中。
创建一个名为的新 32 位 DWORD 值AltTabSettings
并将其设置为 1。
从 Windows 10 会话中注销并再次登录。
笔记
您可以通过删除创建的新值来回滚更改。
答案2
我对这个问题的看法是,这是不可避免的:
Alt-down 被发送到应用程序,然后 Tab-down 由 Windows 处理,从而切换焦点。结果是 Alt-up 永远不会被发送,因此应用程序菜单保持 Alt-pressed 模式。当您现在执行 Alt-Tab 并将焦点重新交给应用程序时,您按下的第一个 Alt 只会撤消菜单模式。
剩下的只是应用程序的内部记录以及它如何处理 Alt-down/Focus-out/Focus-in 的顺序。有些应用程序可能足够智能,可以在焦点移出后撤消 Alt-down。从您的测试来看,似乎大多数应用程序都无法处理这种情况。
这是我在新的 Windows 10 VM 和我自己的计算机上观察到的行为,因此这个问题是 Windows 10 的默认条件。似乎有些人没有遇到这个问题,但为什么它没有发生在他们的计算机上,我目前仍然不知道。
答案3
Notepad++ 可以使用该Alt
按钮执行许多快捷操作,例如
Alt-0 折叠全部
Alt-(1~8) 折叠级别 (1~8)
Alt-Shift-0 展开全部
Alt-Shift-(1~8) 展开级别 (1~8) 因此,notepad++ 等待您按下某个键并将其解释为快捷方式。
你可以使用以下方法禁用快捷方式Alt
Settings -> Shortcut Mapper
答案4
检查你的 Windows 版本Settings > System > About
如果您的 Windows 版本是 1607,那么回滚到 Windows 版本 1511 可能会解决问题。
为此,请打开“开始”屏幕或“开始”菜单,然后选择“设置”。导航到Update & security > Recovery
。单击或点击Get started
下方的按钮Go back to an earlier build
以卸载当前的 Windows 10 版本并返回到您之前使用的版本。
然后重新启动计算机并再次测试该问题。