【MVBA V8I】不能正确的显示单元怎么回事?

问题描述:

1.这是鄙人写的一个“标记元素顶点坐标”的工具。

2.写完后测试,卡在生成单元的部分。

3.但是自己能力有限,看了半天没看出来出错在哪,请各位老师帮我看下。(以为是取点的问题,但在中间插了一段打印点坐标也没有啥问题,最后确定应该是生成字符元素时的问题。)

4.另外问下:Application.CommandState.LocateElement(Point, View, True)是不是只能在主程序里使用啊?我写了个子程序,把这个方法放进去,无法运行,不用子程序直接运行,就能用。还是说我子程序写错了?(子程序在最下方注释了)ZhuangHaoBiaoZhu.mvba

Parents
  • 你的代码至少存在两个严重错误:

    1. 如果是想选择一个元素后执行某种功能,不应该用IPrimitiveCommandEvents接口,而应该改用ILocateCommandEvents,它不需要你调用LocateElement来定位元素,会有专门的Accept函数来接受到用户定位到的元素的。

    2. Dim ele() As Element后不能直接用Set ele(I) = xxx,因为这种动态声明并没有指定ele数组到底多大。当知道了它的大小是count后,需要调用Redim ele(count)来明确数组大小,然后才能对数组中的某个进行赋值。



  • 原来是这样啊,我习惯使用IPrimitiveCommandEvents来处理动态的需求了,我会用ILocateCommandEvents试试看。

    Redim ele(count)这个问题确实不清楚,谢谢符老师指点。

    我再写一下。谢谢

Reply Children
No Data