sss7
路人甲
路人甲
  • 注册日期2004-10-22
  • 发帖数4
  • QQ
  • 铜币116枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:798回复:1

痛苦!请教各位高手!

楼主#
更多 发布于:2004-11-25 21:25
<P>小弟是新手,对mapx和vb都不太熟.我的程序有以下代码:
Dim fNewSymbol As MapXLib.Feature
Dim fMapSymbol As MapXLib.Feature
Dim pt As Point</P>
<P>pt.Set X1, Y1
Set fNewSymbol = Map1.FeatureFactory.CreateSymbol(pt, Map1.DefaultStyle)</P>
<P>Set fMapSymbol = lyrMyLayer.AddFeature(fNewSymbol)
但是执行的时候pt.Set X1, Y1总是报错:对象变量或 With 块变量没有设置(错误 91).查msdn里面说:
创建对象变量有两个步骤。第一,必须先声明对象变量。然后必须用 Set 语句将一个正确的引用赋值给对象变量。同样地,With...End With 块必须先用 With 语句进入点来执行初始化。此错误有以下的原因和解决方法: </P>
<P>试图使用的对象变量,还没有用一个正确对象的引用来赋值。
给对象变量指定或再指定一个引用。例如,如果在下列的代码中省略 Set 语句的话,那么引用 MyObject 将会产生错误:</P>
<P>Dim MyObject As Object    ' 创建对象变量。
Set MyObject = Sheets(1)    ' 创建一个正确的对象引用。
MyCount = MyObject.Count    ' 计数值赋给 MyCount。</P>
<P>试图用的对象变量已经被设为 Nothing。
Set MyObject = Nothing    ' 释放此对象。
MyCount = MyObject.Count    ' 引用了已释放的对象。</P>
<P>再指定引用给对象变量。例如,使用新的 Set 语句给对象设置新的引用。</P>
<P>此对象是正确的对象,但没有被设置,因为在对象库中,在 “引用” 对话框中没有被选取。
在 “添加引用” 对话框选择对象库。</P>
<P>在 With 块内GoTo 语句的去向。
不要跳进 With 块。确保块使用 With 语句进入点以执行初始化。</P>
<P>当选了 “设置下一条语句” 命令时,在 With 块内指定了一行。
With 块必须用 With 语句执行初始化。</P>
<P>
后面几条小弟不太明白,我怀疑是不是因为没有使用Set pt = ...的原因,但是我查了mapx的帮助文档,没有发现有这个要求啊!
请教各位高手,我的错误到底在那里了?
</P>
喜欢0 评分0
sss7
路人甲
路人甲
  • 注册日期2004-10-22
  • 发帖数4
  • QQ
  • 铜币116枚
  • 威望0点
  • 贡献值0点
  • 银元0个
1楼#
发布于:2004-11-26 13:01
253版主!解决了困扰了我很久的问题了!
举报 回复(0) 喜欢(0)     评分
游客

返回顶部