Editor-Schnittstellen verwenden

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Mit Dateien und Editoren arbeiten


Jedes Modul besitzt mindestens eine Editor-Schnittstelle. Manche Module, wie etwa eine Quelldatei (.pas) oder eine Formulardatei (.dfm), weisen mehrere auf. Alle Editoren implementieren die Schnittstelle IOTAEditor. Um die Art des Editors zu bestimmen, wandeln Sie den Editor in einen speziellen Typ um. Um beispielsweise die Schnittstelle des Formular-Editors einer Unit zu erhalten, können Sie wie folgt vorgehen:

{  Gibt den Formulareditor für ein Modul zurück oder nil, wenn die Unit kein Formular enthält. }
function GetFormEditor(Module: IOTAModule): IOTAFormEditor;
var
  I: Integer;
  Editor: IOTAEditor;
begin
  for I := 0 to Module.ModuleFileCount - 1 do
  begin
    Editor := Module.ModuleFileEditors[I];
    if Supports(Editor, IOTAFormEditor, Result) then
      Exit;
  end;
  Result := nil;
end;
// Gibt den Formulareditor für ein Modul zurück oder 0, wenn die Unit kein Formular //
enthält.
_di_IOTAFormEditor __fastcall GetFormEditor(_di_IOTAModule module)
{
for (int i = 0; i < module->ModuleFileCount; ++i)
{
_di_IOTAEditor editor = module->ModuleFileEditors[i];
_di_IOTAFormEditor formEditor;
if (editor->Supports(formEditor))
return formEditor;
}
return 0;
}

Über die Editor-Schnittstellen erhalten Sie Zugriff auf den internen Zustand des Editors, sodass Sie den Quelltext einsehen oder ändern können, den der Benutzer gerade bearbeitet. Dies gilt auch für Komponenten und Eigenschaften. Weiterhin ist es möglich, die Auswahl in Quelltext- oder Formular-Editoren zu ändern und fast jede Editor-Aktion auszuführen, die der Endbenutzer veranlassen kann.

Über eine Formular-Editor-Schnittstelle kann ein Experte auf sämtliche Komponenten im Formular zugreifen. Jede Komponente (einschließlich Stammformular oder Datenmodul) besitzt eine zugeordnete IOTAComponent-Schnittstelle. Ein Experte kann die meisten Eigenschaften der Komponente einsehen oder ändern. Die vollständige Kontrolle über die Komponente erlangen Sie, indem Sie die IOTAComponent-Schnittstelle in INTAComponent umwandeln. Die komponenteneigene Schnittstelle ermöglicht Ihrem Experten den direkten Zugriff auf den TComponent-Zeiger. Sie benötigen diese Fähigkeit, um Eigenschaften vom Typ einer Klasse, z.B. TFont, zu lesen oder zu ändern, da solche Zugriffe nur mit NTA-Schnittstellen (Native Tools API) möglich sind.

Siehe auch