delphi - 如何在delphi中为未发布但公共(public)的事件创建事件处理程序?

标签 delphi events tstringgrid delphi-10.1-berlin

RAD Studio 10.1 Berlin中,与之前的版本相比,有很多事情发生了变化。在 FMX 中,有一些之前发布的事件现在已更改为仅公开。

我有一个使用 TStringGrid 组件和 OnDblClick 事件的多平台项目。在 Studio 10.1 中打开此项目时,我收到警告,属性 OnDblClick 不存在。

现在的问题是我如何使用不再发布的事件?

(我必须说,很难理解为什么他们不再将鼠标事件设置为“已发布”。据我所知,大多数常规 PC 和 OSX 计算机都没有触摸功能。真正的多目标项目应该能够像在西雅图 Studio 10 中那样轻松地瞄准这些系统)

最佳答案

如果事件处理程序已经存在(我通过错误消息暗示),您可以将这些处理程序分配给 FormCreate 中的事件。

procedure TForm1.FormCreate;
begin
  StringGrid1.OnDblClick := StringGrid1DblClick;
end;

关于delphi - 如何在delphi中为未发布但公共(public)的事件创建事件处理程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38282308/

相关文章:

multithreading - 单独 TThread block GUI 线程中的操作

javascript - jQuery 对象上的事件处理程序

c# - 是否有令人信服的理由在声明事件时使用 EventHandler<T> 委托(delegate)而不只是 Action<T>?

delphi - 使用delphi在字符串网格中列出目录中的所有文件

sql-server - Delphi 6、ADO、MS 数据库 "Date"字段与 ftWideString 相同

Delphi 保留字和标识符

delphi - 保存和恢复事件处理程序

c# - 应用程序在处理所有事件之前退出 - 基于事件的异步模式

delphi - OnDrawCell 中心文本 StringGrid - Delphi

delphi - TStringGrid 合并单元格绘图