设置standardcale时,AutoCAD VBA acadPViewport不可预测的行为

时间:2012-03-29 10:59:58

标签: vba autocad

我有一个VBA脚本,可以将布局导入到一个exsting drawing中,它是一个paperpace布局,并包含一个acadPViewport来查看模型。

我需要设置一个合理的默认视图,最简单的方法是将视口设置为模型的范围。

我可以通过致电:

来做到这一点
VP.standardscale = acVPScaleToFit
'(optional, I've tried adding these to no effect)
VP.update
currentDocument.Regen

我已经尝试过这个代码调用。如果我在即时窗口中找到视口,而没有运行任何宏或例程,则通过引用:

ThisDrawing.ActiveLayout.block(1).standardscale = acvpscaletofit

它具有在pViewport中调用ZoomExtents所需的效果(据我所知,它可以告诉它重新计算并重新计算范围,这正是我正在寻找的)。

当我在主代码中运行完全相同的代码时,它没有任何效果。

任何想法都赞赏。

1 个答案:

答案 0 :(得分:0)

事实证明,答案是,如果主要应用程序处于屏幕外,隐藏,最小化或文件加载状态,AutoCAD的许多功能都将无效。