阅读:1855回复:6
菜鸟请教buffer问题
<P>我在对选定的点对象做buffer的时候,总是出现问题,下面我的一段代码!</P>
<P> Dim pt As New MapObjects2.point Dim eventPt As New MapObjects2.GeoEvent Dim buffPt As New MapObjects2.Polygon Dim buffEventPt As New MapObjects2.GeoEvent Set pt = selectedFeatures ("shape").Value Set eventPt = Map1.TrackingLayer.AddEvent(pt, 0) Set buffPt = pt.Buffer(1, Map1.FullExtent)</P> <P> Set buffEventPt = Map1.TrackingLayer.AddEvent(buffPt, 3)</P> <P> 为什么每次运行到set pt =selectedfeatures("shape").value的时候总是提示:实时错误‘5003’,there are no more records in the recordset 。</P> <P>用实时跟踪调试,我的selectedfeatures是有值的,请各位指点,哪里出了问题?谢谢先了!</P> [此贴子已经被作者于2004-11-15 14:46:43编辑过]
|
|
1楼#
发布于:2004-11-16 18:49
谢谢,问题解决!<img src="images/post/smile/dvbbs/em12.gif" />
|
|
2楼#
发布于:2004-11-16 10:14
<P>这是个简单的定义例子,可以参照</P><P>Dim tl As MapObjects2.TrackingLayer
Set tl = frmMain.Map1.TrackingLayer</P><P>'****下列的符号定义可以修改使用 With tl .SymbolCount = 3 '========点线面====当选择对象后进行显示的设置 '黄色方点 .Symbol(0).SymbolType = moPointSymbol .Symbol(0).Style = moSquareMarker .Symbol(0).Color = moYellow .Symbol(0).Size = 10 '黑色透明多边形 .Symbol(1).SymbolType = moFillSymbol .Symbol(1).Style = moTransparentFill .Symbol(1).Color = moBlack .Symbol(1).Size = 2 .Symbol(1).OutlineColor = moBlack .Symbol(1).Outline = True .Symbol(2).SymbolType = moFillSymbol .Symbol(2).Style = moSolidFill .Symbol(2).Outline = True .Symbol(2).OutlineColor = moBlack .Symbol(2).Size = 3 .Symbol(2).Color = moYellow End With</P> |
|
|
3楼#
发布于:2004-11-16 10:11
<P>Set buffEventPt = Map1.TrackingLayer.AddEvent(buffPt, 3)</P><P>3应该是代表符号的参数,所以你要定义一个符号</P>
|
|
|
4楼#
发布于:2004-11-16 10:06
谢谢楼上的两位,我改正后,现在提示:Set buffEventPt = Map1.TrackingLayer.AddEvent(buffPt, 3) 要求对象,不知道是什么原因?
|
|
5楼#
发布于:2004-11-16 09:05
楼上的说得对,先判断一下
|
|
|
6楼#
发布于:2004-11-15 19:34
<P>先判断rec != null || !rec.eof</P><P>添加 selectedfeatures.movefirst 试试</P>
|
|