Furtbichler hat Dich wohl besser verstanden, aber mal trotzdem noch mein Text dazu:
So könntest Du Deinem übergeordneten Control (TMyDesigner) ein Event hin zu fügen, in dem Du Dein Control und die Region (TMyRegion) verarbeiten kannst.
Statt TMyRegion könntest Du natürlich auch TMySymbol behandeln.
Delphi-Quellcode:
TMouseEnterRegion = procedure(Sender: TMyDesigner; aRegion: TMyRegion) of object;
TMyDesigner = class(TPanel)
protected
fOnMouseEnterRegion: TMouseEnterRegion;
procedure MouseMove(Shift: TShiftState; X, Y: Single); override;
poblished
property OnMouseEnterRegion: TMouseEnterRegion read fOnMouseEnterRegion write fOnMouseEnterRegion;
end;
...
procedure TMyDesigner.MouseMove(Shift: TShiftState; X, Y: Single);
begin
inherited;
if (*SelectANewRegion*) and (Assigned(OnMouseEnterRegion)) then
begin
OnMouseEnterRegion(Self, *NewRegion*);
end;
end;