![](/img/trans.png)
[英]How to select sub-control in my custom control in design-time in delphi
[英]Delphi: How to create an extra design-time menu for a custom component?
我最近重新编译了TDBGrid组件,以实现一些自定义功能,尽管我已经注意到,额外的设计时上下文菜单项“列编辑器”的功能现已消失。
我找不到在原始Vcl.DBGrids
单元中创建此菜单的任何代码,但真是运气不好,无法在网上找到有关如何执行此操作的解决方案。
这也适用于双击。 它曾经调用列编辑器,现在仅创建OnCellClick事件。
在组件的设计时包中,实现组件编辑器:
type
TMyComponentEditor = class(TComponentEditor)
procedure ExecuteVerb(Index: Integer); override;
function GetVerb(Index: Integer): string; override;
function GetVerbCount: Integer; override;
end;
procedure TMyComponentEditor.ExecuteVerb(Index: Integer);
begin
case Index of
0:
Beep;
end;
end;
function TMyComponentEditor.GetVerb(Index: Integer): string;
begin
Result := 'Beep';
end;
function TMyComponentEditor.GetVerbCount: Integer;
begin
Result := 1;
end;
您还需要注册此组件编辑器。 在Register
过程中调用RegisterComponentEditor
来执行以下操作:
RegisterComponentEditor(TMyComponent, TMyComponentEditor);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.