delphi - 在 Delphi 2007 中未调用 Application.OnHelp

标签 delphi delphi-2007

我已为 Application.OnHelp 分配了一个事件处理程序,但它没有被调用。我读过一些有关类似问题的其他帖子,但其中许多都是针对 Delphi 7 或 Delphi 2010 的。

我尝试过使用 D6OnHelpFix,但这只是改变问题,而不是解决问题。

在 TApplication.DoOnHelp(在表单中)末尾,AppEvnts 中的 TMultiCaster.DoHelp 内的 FOnHelp 调用始终失败。也就是说,DoHelp 例程循环但无法实际调用我的事件处理程序。

最佳答案

听起来您在代码中使用了 TApplicationEvents 对象。在这种情况下,您需要将事件处理程序附加到 TApplicationEvents 对象的 OnHelp 事件,而不是 TApplication< 的 OnHelp 事件

原因是 TApplicationEvents 用它自己的处理程序替换附加到 TApplication 的事件来执行多播调度。

关于delphi - 在 Delphi 2007 中未调用 Application.OnHelp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23541720/

相关文章:

Delphi TreeView : Can I have different styles in one node's text?

c# - C# 项目文件拉稀是常态吗?

delphi - 如何实现多次Undo/Redo?

delphi - Delphi Android无法使用TPath

delphi - TFrame 内的事件处理程序?

xml - 如何在未安装 Excel 的情况下将 DBGrid 导出为 OOXML 格式(Excel 2007/2010 格式)?

delphi - delphi XE中如何读取文件内容到字符串

delphi - 我可以让 TTreeNode 不可见吗?

delphi - 如何正确升级Delphi和组件中的Zlib?

sql - 如何使用 Delphi 2007 从 firebird 中的时间戳字段获取毫秒值