tmdtm
路人甲
路人甲
  • 注册日期2005-04-12
  • 发帖数1
  • QQ
  • 铜币111枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:1758回复:2

[求助]MO+VB,新建一个图层怎么也不能上色

楼主#
更多 发布于:2005-07-07 03:26
<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编辑过]
喜欢0 评分0
zerostar88
路人甲
路人甲
  • 注册日期2004-05-13
  • 发帖数86
  • QQ37778749
  • 铜币342枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于: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>
------*-----GIS守望者! Email:zerostar_adonishen@yahoo.com.cn ------*GIS_lover*------
举报 回复(0) 喜欢(0)     评分
yzlz888
路人甲
路人甲
  • 注册日期2005-01-19
  • 发帖数3
  • QQ
  • 铜币127枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2005-12-28 10:09
同意楼上看法!<img src="images/post/smile/dvbbs/em01.gif" /><img src="images/post/smile/dvbbs/em01.gif" />
举报 回复(0) 喜欢(0)     评分
游客

返回顶部