So, habe jetzt meinen FormNotifier soweit geändert, das er erkennt, das eine Komponente umbenannt wird/werden soll, bzw. er erkennt auch, das eine Komponente auf das Formular gezogen wird.
Mit dem Aufruf
SetPropValue(Instance, 'Caption', 'Test');
will ich nun das Property "Name", also die Komponentenbezeichnung in "Test" ändern.
Er durchläuft zwar diesen Aufruf und führt Ihn aus, jedoch wird der Name nicht geändert.
Hier nochmal der FormNotifier:
Delphi-Quellcode:
procedure TPPWFormNotifier.ComponentRenamed(ComponentHandle: TOTAHandle;
const OldName, NewName: string);
var
Module : IOTAModule;
Editor : IOTAEditor;
FormEditor : IOTAFormEditor;
OTAComponent: IOTAComponent;
Component: IOTAComponent;
I: Integer;
Instance : TComponent;
C1, C2: TPersistentClass;
Match: Boolean;
begin
if not FRenaming then
try
FRenaming := True;
Module := ( BorlandIDEServices as IOTAModuleServices ).FindModule(FFileName);
ShowMessage('Module FindModule OK');
Instance := TComponent(ComponentHandle);
ShowMessage('Instance = ComponentHandle');
if not Assigned(ComponentHandle) then begin
ShowMessage('ComponentHandle not assignes!');
Exit;
end;
Instance := TComponent(ComponentHandle);
begin
SetPropValue(Instance, 'Name', 'Test');
ShowMessage('SetPropValue OK');
// end;
end;
// end
finally
FRenaming := False;
end;
end;
Hoffe, es kann mir einer helfen!