|
阅读:1760回复:2
[求助]MO+VB,新建一个图层怎么也不能上色
<P>新建了一个图层,图层包含一个多边形。刷新之后只能显示边框,却不能着色。不知道哪里问题。(刚学不久,请大家帮帮忙。谢谢)</P>
<P>Dim new_line As New MapObjects2.Polygon<br>Dim JsFields As New MapObjects2.TableDesc</P> <P>Dim pSaveConnect As New MapObjects2.DataConnection<br>Dim pSaveShape As New MapObjects2.MapLayer<br>Dim pSaveRecs As New MapObjects2.Recordset '新的实体集<br>Dim pJsField As Object</P> <P>pSaveConnect.Database = App.Path</P> <P> If Not pSaveConnect.Connect Then Exit Sub<br> '获取数据库结构<br> If Not IsNull(pSaveConnect.FindGeoDataset("TEST")) Then<br> pSaveConnect.DeleteGeoDataset "TEST"<br> End If<br> Set JsFields = CreateFields '创建数据集字段的函数,这里就不写了<br> pSaveShape.GeoDataset = pSaveConnect.AddGeoDataset("TEST", moShapeTypePolygon, JsFields)<br> <br> Set pSaveRecs = pSaveShape.Records<br> pSaveRecs.AutoFlush = False<br> pSaveRecs.AddNew<br> Call GetDS(pSaveRecs) '创建多边形<br> Set pSaveRecs.Fields("Shape").Value = new_line<br> pSaveRecs.Fields("H").Value = 12 '随便建了一个字段</P> <P> pSaveRecs.Update<br> pSaveRecs.StopEditing<br> <br> mapMain.Layers.Add pSaveShape</P> <P><br> Dim VR As New MapObjects2.ValueMapRenderer<br> Set pSaveShape.Renderer = VR<br> VR.field = "H"<br> VR.ValueCount = 1<br> VR.SymbolType = 2<br> VR.UseDefault = True<br> VR.Value(0) = "12"<br> VR.Symbol(0).Style = 0<br> VR.Symbol(0).color = moGreen<br> VR.Symbol(0).Size = 0<br> VR.Symbol(0).Outline = True<br> pSaveConnect.Disconnect</P> <P>legLayer.LoadLegend True</P> <P>mapMain.Refresh</P> [此贴子已经被作者于2005-7-7 3:27:41编辑过]
|
|
|
1楼#
发布于:2005-12-28 10:09
同意楼上看法!<img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" />
|
|
|
2楼#
发布于:2005-07-09 21:56
<P>Private Sub menu_Layers_color_Click(Index As Integer)<BR> CDG.ShowColor<BR> CDG.Flags = 3<BR> Dim Layer As New MapObjects2.MapLayer<BR> Dim msg<BR> If Map1.Layers.Count = 0 Then<BR> msg = MsgBox("当前没有图层,请添加图层!", 321, "提示")<BR> Else<BR> Set Layer = Map1.Layers.Item(0)<BR> Layer.Symbol.Color = CDG.Color<BR> Map1.Refresh<BR> End If<BR>End Sub</P>
<P>这是我做的一个图层颜色改变的事件,仅供参考!!!</P> |
|
|