阅读:1455回复:2
在数据绑定的时候如何自定义图标啊?
<P>用下面的代码实现了绑定。</P>
<P>我能根据node表的一个字段如TYPE定义不同的Symbol符号吗? 现在在地图显示的是默认的五角星。想换成其它的几种符号</P> <P>procedure TfrmMain.DrawNodeLayerFromDB ; var oBLayer : BindLayer; SearchLayer : Layer; ds : Dataset; qsql:string; begin //准备数据源 qsql := 'select * from node where longitude<>0 and latitude<>0'; with ADOQueryTmp do begin close; SQL.Clear; SQL.Add(qsql); Open; end; // fields := CoFields.Create; // fields.Add('longitude', 'longitude', miAggregationAuto, miTypeString); // fields.Add('nodeID', 'nodeID', miAggregationAuto, miTypeString); // fields.Add('TOTPOP', 'TOTPOP', miAggregationAuto, miTypeNumeric);</P> <P> oBLayer := coBindLayer.Create; oBLayer.LayerName := '节点'; oBLayer.LayerType := miBindLayerTypeXY;//必须使用这个参数才能绑定XY坐标 oBLayer.RefColumn1 := 'longitude';//第一个参数必须指定为横坐标 oBLayer.RefColumn2 := 'latitude';//纵坐标 //添加数据集 ds := mapMain.DataSets.Add(12,//数据集类型,这是miDataSetADO,即ADO专用的 ADOQueryTmp.Recordset,//使用这个方法获得ADO中的_Recordset类型 'DS_Node',//数据集名称 'py',//传入的是Xunit表中的字段ID的名称 EmptyParam, oBLayer,//BindLayer EmptyParam, EmptyParam);</P> <P> //下边将设置新图层的各项属性 searchLayer := mapMain.Layers.Item['节点']; // searchLayer := oBLayer; //字体颜色 searchLayer.LabelProperties.Style.TextFontColor := miColorPurple; searchLayer.LabelProperties.Style.TextFontHalo := true; searchLayer.LabelProperties.Style.TextFontBackColor := miColorWhite; //设置图元显示的标签 searchLayer.LabelProperties.Dataset := ds; searchLayer.LabelProperties.DataField := ds.Fields.Item['nodeName']; searchLayer.LabelProperties.LabelZoom := true; //设置图层缩放比例范围 searchLayer.ZoomMin := 0; searchLayer.ZoomMax := 200; searchLayer.ZoomLayer := true; //设置标签缩放比例范围 searchLayer.LabelProperties.LabelZoomMin := 0; searchLayer.LabelProperties.LabelZoomMax := 200; searchLayer.LabelProperties.LabelZoom := true; //自动标记图元 searchLayer.AutoLabel := true;</P> <P>end; </P> |
|
1楼#
发布于:2004-09-03 08:33
<P>你指定符号的名称就可以改变符号了</P>
|
|
2楼#
发布于:2004-09-08 20:44
<P>我能根据node表的一个字段如TYPE定义不同的Symbol符号吗? 现在在地图显示的是默认的五角星。想换成其它的几种符号</P><P>大大。如果我的NODE表的TYPE字段有A,B,C,D,E,F几种类型</P><P>我想绑定的时候根据TYPE的不同字段设置不同的符号,具体该怎么弄啊???????HELP</P>
|
|