如何更新Delphi对象检查器?
以下是我最近发布的这个问题:可以在多个组件上执行组件编辑器吗?
我为一个新组件创建了一个ComponentEditor,它在执行时显示一个TOpenDialog来选择一个配置文件。 加载文件时,我读取数据并将值复制到调用组件(因为它是TComponentEditor,因此它是Component
)。
除了Object Inspector未更新以反映新更改的值之外,完全没有任何问题 - 只有在Designer中单击组件时才更新。
这看起来可能不是什么大事,但我需要Object Inspector以某种方式更新自己,以便我可以看到属性已成功更改(无需将焦点切换回控件)。
那么,有没有让Delphi知道它应该更新/刷新Object Inspector的方法? 一世
根据需要修改组件后,组件编辑器需要调用IDesigner.Modified()
方法,例如:
procedure TMyComponentEditor.ExecuteVerb(Index: Integer);
var
Dlg: TOpenDialog;
begin
...
Dlg := TOpenDialog.Create(nil);
try
...
if Dlg.Execute then
begin
...
Designer.Modified;
end;
finally
Dlg.Free;
end;
...
end;
链接地址: http://www.djcxy.com/p/63135.html