AnnChange example for Delphi
var
//Global declarations
RasterAnn: LEADRasterAnnotation;
RasterAnnToolbar: LEADRasterAnnToolBar;
procedure TForm1.Button1Click(Sender: TObject);
begin
RasterAnn:= CoLEADRasterAnnotation.Create ();
RasterAnnToolbar:= CoLEADRasterAnnToolBar.Create ();
RasterAnn.AnnParentRasterView := LEADRasterView1.Raster;
LEADEventSink1.Connect (RasterAnn, _LEADRasterAnnotationEvents);
RasterAnn.AnnUserMode := ANN_USERMODE_DESIGN ;
end;
procedure TForm1. LEADEventSink1Invoke(Sender: TObject; DispID: Integer;
const IID: TGUID; LocaleID: Integer; Flags: Word; Params: tagDISPPARAMS;
varResult, ExcepInfo, ArgErr: Pointer);
var
Buffer: String;
nTag: Longint;
hAnnObject: OleVariant;
begin
case (DispID) of
LEADRASTERANNOTATIONEVENTS_ANNCHANGE:
begin
hAnnObject:= OleVariant(Params.rgvarg^[0]);
RasterAnn.AnnGetTag (hAnnObject);
nTag:= RasterAnn.AnnTag;
Buffer:= ' This is a change for the button tagged ' + IntToStr(nTag);
ShowMessage (Buffer);
end;
end;
end;