ntchjie
发表于 2004-5-19 12:12:00
我搞了好几天了,错误老是出现在这里:
Set ObjCurve.Entity = ent<BR> Dim Dist As Double<BR> Dist = ObjCurve.GetDistanceAtPoint(Pnt)<BR>下面是错误的贴图
e:\1.bmp
请斑竹指教,谢谢了。
mccad
发表于 2004-5-22 22:09:00
把完整的代码贴出来。<BR>另外你的贴图方法不对,你的图形在其它人的计算机中显示不出来。必须做上传才行。
ntchjie
发表于 2004-5-23 11:21:00
我用的是这个文件,详见附件
附上贴图
yingxunxue
发表于 2004-5-26 15:39:00
<b>[求助]请教版主,在VBA中的“IDE”在哪呀,能不能具体的教教,如何用VLAX类?谢谢了<BR></b> 能不能具体的教教,如何用VLAX类?谢谢了<BR>出现如下错误 :<BR>“实时错误-2147220999 (800401f9)”选择调试后停在类库: <BR>Private Sub Class_Initialize()
Set VL = ThisDrawing.Application.GetInterfaceObject("VL.Application.16") <BR> Set VLF = VL.ActiveDocument.Functions
End Sub <BR>的第一行。请问如何解决,麻烦了!
Private Sub Class_Initialize()
If Left(ThisDrawing.Application.Version, 2) = "15" Then<BR> Set VL = ThisDrawing.Application.GetInterfaceObject("VL.Application.1")<BR> ElseIf Left(ThisDrawing.Application.Version, 2) = "16" Then<BR> Set VL = ThisDrawing.Application.GetInterfaceObject("VL.Application.16")<BR> End If<BR> Set VLF = VL.ActiveDocument.Functions
End Sub
能不能帮我解释这段程序!!
雪山飞狐_lzh
发表于 2004-5-26 18:03:00
VL.Application.1是Vlisp在AutoCad2002的版本
VL.Application.16是Vlisp在AutoCad2004和AutoCad2005的版本
ntchjie
发表于 2004-5-26 22:32:00
哎,我看到论坛里面好多vlax的代码,就是一个都没有调试的出来,vlax简直无法逾越,不指导哪位高手有成功的代码,能不能发给我。nt_jie@hotmail.ocm
yingxunxue
发表于 2004-5-26 22:37:00
我也觉的是.希望彼此讨论.
调试的时候为什么运行完Set VL = ThisDrawing.Application.GetInterfaceObject("VL.Application.16")出现加载应用程序错误--------------------我用的是AUTOCAD2004<BR>
wmz
发表于 2004-6-10 20:00:00
请教:我将此两类模块加入到我的工程中后在ACAD2005上运行正常,但将该工程直接放到ACAD2004上后却出现了"不可识别的对象(Curve)"错误,却是为何?(我是直接取名为"ACAD.DVB"拖入到ACAD2004的SUPPORT文件夹的--当然,我在建立该工程时也是将该工程存放在ACAD2005的SUPPORT文件夹)
wmz
发表于 2004-6-10 20:12:00
rscenter发表于2004-4-14 16:10:00static/image/common/back.gif也就是说:前面的代码不要了,包括:VERSION 1.0 CLASSBEGIN MultiUse = -1 'TrueEndAttribute VB_Name = \"VLAX\"我在ACAD2005上顺利通过,而放到ACAD2004上时以下这句Set ObjCurve = New Curve却出现了错误,请指正!
wmz
发表于 2004-6-10 20:25:00
楼主:这段代码第二行Dim定义掉了一个变量,估计是i
Public Property Get EndPoint() As Variant
Dim retval As Variant, pt(0 To 2) As Double<BR> dim As Long<BR> <BR> With objVLAX<BR> .SetLispSymbol "handle", mvarEntity.Handle<BR> .EvalLispExpression "(setq lst (vlax-curve-getEndPoint (handent handle)))"<BR> retval = .GetLispList("lst")<BR> .NullifySymbol "handle", "lst"<BR> End With<BR> <BR> For i = 0 To 2<BR> pt(i) = retval(i)<BR> Next<BR> <BR> EndPoint = pt
End Property<BR>