我提前为这个模糊的问题道歉,但谁能给我一个关于这个问题的指针?
Delete 键在我的应用程序中无法正常工作。例如,Delete 键在编辑框中无效(即它不会删除突出显示的文本)但 Shift Delete 确实有效。在整个应用程序中似乎都是这种情况。我已经禁用了所有 keypreviews 和 OnKey 事件,以防它们导致它但问题仍然存在。
谁能建议我可以在哪里寻找问题?
运行 Windows 10 Delphi 10.3.3
如果这种情况只发生在这个特定的应用程序中,很可能你有一个TActionList或TActionManager使用一个操作Delete作为其快捷方式,或者一个带有此类快捷方式的简单菜单项。
例如,您可能有一个Edit菜单,其中一个Clear项目Delete用作其快捷方式:
然后该操作或菜单项将响应Delete,不允许焦点控件做自己的事情。
这种错误出奇的普遍。例如,在 Delphi IDE 中,编辑器上方有一个编辑字段,显示当前类:
如果您选择此文本并按 Ctrl+C,您希望它最终出现在剪贴板中。但不是!相反,即使代码编辑器没有键盘焦点,也会复制代码编辑器(如果有)中的选定文本。