在SuperMap Objects 5.02中出现这样的问题
var
wLayer:soLayer;
s:String;
...
begin
wLayer:=spmMain.Layers.Item[1];
s:=wLayer.Name;
wLayer:=nil;///这句必须加上,不然在删除后会出错报错
spmMain.Layers.RemoveAt(s);
end;
当然如果没有定义wLayer对Layers[1]的指定,则不会出现这样的问题。
上面说明的是:在SuperMap Objects 5.02以及5.2中,在建立了wLayer的引用之后,如果要移除图层或得删除数据集时,必须先释放wLayer的引用,即先执行wLayer:=nil;