Taoyimaier 发表于 2003-4-18 19:50:00

用vba的selectonscreen时使用缩放、平移命令会中断vba的选择,痛苦

写一个代码如下的程序(大致意思如下),
public sub main()
   set objsets = thisdrawing.selectsets
   set objset = objsets.add("kkk")
   objset.selectonscreen
msgbox objset.count
objset.clear
objset.delete
end sub
当我想多选择些实体时,用了pan,zoom,结果在命令行出现了*取消*
版主,我知道您是一个好人,也许您不是第一次回答这个问题,但...

myfreemind 发表于 2003-4-18 20:10:00

public sub main()
on error goto err
   set objsets = thisdrawing.selectsets
   set objset = objsets.add("kkk")
   objset.selectonscreen
msgbox objset.count
objset.clear
objset.delete
exit sub
err:
resume
end sub

Taoyimaier 发表于 2003-4-18 21:27:00

我发现在用selectonscreen时使用一些透明命令pan,zoom时不会产生错误来触发错误机制,如果按你的意思的话,那么程序用了pan之后将继续执行后面的语句,而不能再继续选择,程序也变得没有任何意义(只要用了别的命令,选择集的count属性都成了0),

Taoyimaier 发表于 2003-4-18 22:57:00

版主,你的话太打击我的积极性了,上天为什么对我如此不公,刚改用vba就受到这个挫折,那我问问版主,如果你碰到了,怎么办啊,换语言?其实我得vlisp还好一些,但就是因为这个程序要有一些界面,难道非要学dcl,
还有一个问题,就是在用vba是,插入的textbox控件前总有几个字符的空位
这样看起来感觉不好,怎么解决的,
真的非常感谢我们的版主和我的同行myfreemind
thanks

mccad 发表于 2003-4-18 23:31:00

由于它无法保持原来选定的对象,所以用什么方法都无法找回刚刚选定的对象。
解决方法可能要在选定对象前提示用户。
而对于文本框中的空白,因为它只是空白,而不是空格,也是没办法解决的(真对不起,你提的两个问题都不无法解决的)

myfreemind 发表于 2003-4-18 23:37:00

我晚上调试了一下,也确实怎么搞都没有办法,因为好象VBA对错误的判别比较简单,不同的键产生的错误代码居然一样,我弄的头都大了,呵呵~~~帮不到你真是不好意思~~

Taoyimaier 发表于 2003-4-18 23:55:00

好了,这个话题就道此为止吧,打算就按你的办法了,提示用户,非常感谢两位的讲解,真是感激的。。。以后有问题再向两位请教
页: [1]
查看完整版本: 用vba的selectonscreen时使用缩放、平移命令会中断vba的选择,痛苦