如果我们从TDbGrid中驱逐一个组件,我们可以在ExecuteVerb方法中使用ShowCollectionEditor来调用它的组件编辑器, 那么,什么是TTreeView的组件编辑器? 我的意思是当我们右键单击TreeView时,我们可以看到“项目编辑器......” 我们怎么能调用它?
我尝试使用它:
procedure TComponentExMenu.ExecuteVerb(Index: Integer);
begin
case Index of
0: ShowMessage('SomeThing..');
1:
if Component is TMyDBGrid then
ShowCollectionEditor(Designer, Component, TMyDBGrid(Component).Columns, 'Columns')
else if Component is TMyTreeView then
inherited ExecuteVerb(0)
end;
end;
但不起作用。
我的组件来自CustomTreeView。 我使用delphi 7。
谢谢大家。
答案 0 :(得分:1)
您的意思是,在设计期间右键单击IDE吗?
你可以在
中找到那个编辑器和类似的东西(或者至少是APi)它们是c:\ RAD Studio \ 9.0 \ lib \ win32 \ release \ designide.dcp
的一部分据我所知,它们被认为是Delphi IDE本身的一部分,它们的重新分配将构成盗版行为。此外,如果没有IDE运行,软件包将无法正常运行。
如果您需要将其嵌入到您的程序中,请尝试开源Virtual TreeView
。
有一些演示会让你更容易编写这样的编辑器。
如果您设法将其设计时编辑器与IDE服务分离,您将拥有所有需要的再分发权限。