ahi te va el código, la verdad ya no recuerod bien los pasos
Código Delphi
[-]
procedure TForm2.BBEtiquetaClick(Sender: TObject);
var
aqui : integer;
oleFt : variant;
lblren : IMoLabelRenderer;
begin
if (cbvisible2.Checked) and (cbdato.Text<>'') then
begin
oleft := FontToOleFont(fuentes.Font);
lblren :=IMoLabelRenderer(CreateOleObject('MapObjects2.LabelRenderer'));
LblRen.DrawBackground := True;
LblRen.Field := 'Nom';
LblRen.SplinedText := True;
LblRen.AllowDuplicates := False;
LblRen.MaxLevel := 10;
LblRen.MinLevel := 10;
LblRen.Symbol[0].Font := IFontDisp(IDispatch(oleFt));
lblren.field :=cbdato.Text;
l.renderer := lblren;
end else l.renderer :=nil;
aqui:= Valida_Nombre(l);
if (aqui = -1) then
begin
aqui:= form1.SGalmacen.RowCount;
form1.SGalmacen.RowCount:=aqui+1;
form1.SGalmacen.Cells[0,aqui]:=l.Name;
form1.sgalmacen.Cells[1,aqui]:='True';
end;
if (cbvisible2.Checked) then
begin
form1.SGalmacen.Cells[4,aqui]:='True';
form1.SGalmacen.Cells[5,aqui]:=CBdato.Text;
end
else
begin
form1.SGalmacen.Cells[4,aqui]:='False';
form1.SGalmacen.Cells[5,aqui]:='';
end; close;
form1.Map1.Refresh;
form1.refresca_legend;
end;