gisfinder
路人甲
路人甲
  • 注册日期2004-12-13
  • 发帖数20
  • QQ
  • 铜币167枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:2036回复:4

delphi开发mo问题:如何从线获得点

楼主#
更多 发布于:2005-02-28 16:19
<P>var
objRecs:IMoRecordSet;
firstPart :IMoPoints;
lineClicked :IMoLine ;
ptStart:IMoPoint ;
objFields:IMOFields;
objField:IMOField;</P>
<P>begin
//搜索</P>
<P>objRecs:=g_layer.SearchByDistance(moEndPoint,12,'');
if( not objRecs.EOF) then
  begin
    objFields:=objRecs.fields;
    lineClicked:=IMoLine(CreateOleObject('MapObjects2.Line'));</P>
<P> //获得线,线已经选上了
    lineClicked:=IMoLine(IDispatch(objFields.Item('shape').value));</P>
<P>//在这里出错了,错误提示:Missing operator or semiconlon
    firstPart:=lineClicked.Parts(0);</P>
喜欢0 评分0
早起的虫子
路人甲
路人甲
  • 注册日期2004-12-28
  • 发帖数9
  • QQ
  • 铜币136枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2005-03-01 10:29
我也是同样的问题,在例子里看到VB中是通过line.parts(0)来得到points的,在Delphi中我们可以用line.Parts.item(0)来得到IMoPoints,你可以试试,我是刚试的;另外我是Delphi+Mo的,只是不是很久,错了不要怪我。
举报 回复(0) 喜欢(0)     评分
gisfinder
路人甲
路人甲
  • 注册日期2004-12-13
  • 发帖数20
  • QQ
  • 铜币167枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2005-03-02 08:13
谢谢这位朋友,我回去试试
多谢了
举报 回复(0) 喜欢(0)     评分
gisfinder
路人甲
路人甲
  • 注册日期2004-12-13
  • 发帖数20
  • QQ
  • 铜币167枚
  • 威望0点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2005-03-02 08:44
这样还是不行
line.parts.item(0)应该得到的是点,可是我试了也不行,你再试试,delphi+Mo的帮助太少了,你都看一些什么资料?
举报 回复(0) 喜欢(0)     评分
早起的虫子
路人甲
路人甲
  • 注册日期2004-12-28
  • 发帖数9
  • QQ
  • 铜币136枚
  • 威望0点
  • 贡献值0点
  • 银元0个
4楼#
发布于:2005-03-02 15:32
<P>pts := IMoPoints(line.Parts.item(0));</P><P>我就是这样用的,如果你还不行可以留下email地址,我发个例子给你。</P>
举报 回复(0) 喜欢(0)     评分
游客

返回顶部