KeepEdit: Boolean;
KeepEdit: boolean;
Свойство KeepEdit определяет признак нахождения объекта в состоянии редактирования после создания.
Если свойству установлено значение True, то после выполнения метода IMetabase.CreateObject созданный объект будет находиться в состоянии редактирования. Это позволяет сразу привести созданный объект к нужному интерфейсу и настроить специфические свойства. Если свойству установлено значение False, то для изменения специфических свойств созданного объекта его будет необходимо открыть на редактирование с помощью метода IMetabaseObjectDescriptor.Edit.
Добавьте ссылку на системную сборку Metabase.
Sub UserProc;
Var
MB: IMetabase;
CrInfo: IMetabaseObjectCreateInfo;
m: IModule;
Begin
MB := MetabaseClass.Active;
CrInfo := MB.CreateCreateInfo;
CrInfo.ClassId := MetabaseObjectClass.KE_CLASS_MODULE;
CrInfo.Parent := MB.Root;
CrInfo.KeepEdit := True;
m := MB.CreateObject(CrInfo) As IModule;
m.Text := "Sub Main;" + #13 + #10 +
"Begin" + #13 + #10 +
"End Sub Main;";
(m As IMetabaseObject).Save;
End Sub UserProc;
Public Sub Main(Params: StartParams);
Var
MB: IMetabase;
CrInfo: IMetabaseObjectCreateInfo;
m: IModule;
Begin
MB := Params.Metabase;
CrInfo := MB.CreateCreateInfo();
CrInfo.ClassId := MetabaseObjectClass.KE_CLASS_MODULE As Int32;
CrInfo.Parent := MB.Root;
CrInfo.KeepEdit := True;
m := MB.CreateObject(CrInfo) As IModule;
m.Text := "Sub Main;" + Char.ConvertFromUtf32(13) + Char.ConvertFromUtf32(10) +
"Begin" + Char.ConvertFromUtf32(13) + Char.ConvertFromUtf32(10) +
"End Sub Main;";
(m As IMetabaseObject).Save();
End Sub;
После выполнения примера в корневом каталоге репозитория будет создан новый модуль. Для указания заготовки процедуры «Main» в модуле структура модуля остается открытой на редактирование после выполнения метода IMetabase.CreateObject.
См. также: