Delphi 更改GMLib默认标记

Delphi 更改GMLib默认标记,delphi,icons,gmlib,Delphi,Icons,Gmlib,我在delphi应用程序中使用gmlib,它满足了我的需要。我从坐标表中加载标记,但现在我想替换默认标记样式。因为我是在代码中完成这一切的,所以我没有任何gmmarker项。我的代码是循环的: gmmarker1.Add(qryPoints.FieldByName('lat').AsFloat,qryPoints.FieldByName('lon').AsFloat,address); 当我尝试使用以下命令更改图标时: gmmarker1.Items[0].Icon:='c:\measle.p

我在delphi应用程序中使用gmlib,它满足了我的需要。我从坐标表中加载标记,但现在我想替换默认标记样式。因为我是在代码中完成这一切的,所以我没有任何gmmarker项。我的代码是循环的:

gmmarker1.Add(qryPoints.FieldByName('lat').AsFloat,qryPoints.FieldByName('lon').AsFloat,address);
当我尝试使用以下命令更改图标时:

gmmarker1.Items[0].Icon:='c:\measle.png';
我收到一个错误“参数超出范围”


是否可以在不向标记添加项目的情况下更改默认图标?还是我做错了?

TGMMarker的Add方法返回一个TMarker对象。您可以使用它来指定更多属性,如图标属性。但是,gmmarker1.Items[0]。图标或gmmarker1[0]。如果存在任何标记,则图标必须为“工作”。检查gmmarker1。在完成之前数数,谢谢。我添加了一个变量markers(int)并添加了代码:markers:=gmmarker1.Count;对于标记:=0到标记-1,请务必从gmmarker1开始。项[markers]。图标:='c:\fdms\measle.png';结束;