; ds := mapMain.Datasets.Add(12, aqThemes.Recordset, str, ''''ID'''', EmptyParam, oBLayer, EmptyParam, EmptyParam); {组织专题图现实的数据字段,存储在字符串数组中} SetLength(flds,aqThemes.Fields.Count - 3); for i:=3 to aqThemes.Fields.Count - 1 do begin flds[i - 3] := aqThemes.Fields.Fields[i].FieldName; end; {实际添加专题图的过程} thm := ds.Themes.Add(style,flds,DefaultName,EmptyParam); {设置专题图图例标题} thm.Legend.Title := TheName; {记录新添加的专题图名称} ThemesList.Add(str); {btnDeleteThemes是一个在本窗口上的按钮,用来删除专题图, 添加专题图后就将他显示出来,如果删除了全部专题图就将他隐藏} btnDeleteThemes.Visible := true; except GiveMsg(''''创建专题图失败!'''');{自定义过程,给出出错提示} end; end; { 删除专题图,我采用的方法是删除所有专题图 } procedure TfrmMain.ToDeleteThemes; var i : integer; {循环变量}begin for i:=0 to ThemesList.Count-1 do{循环所有添加了的专题图} begin {删除数据集} mapMain.Datasets.Remove(ThemesList.Strings[i]); {删除专题图} mapMain.Layers.Remove(ThemesList.Strings[i]); {如果只想删除某一个专题图,不用循环就行了} end; {此时已经没有专题图了,将删除专题图按钮隐藏} btnDeleteThemes.Visible := false; {清除专题图名称列表} ThemesList.Clear; end; //... end. 杨雨田 blue_bat@126.com 二零零四年八月二日
上一页 [1] [2] |