|
发表于 2007-8-15 11:19:00
|
显示全部楼层
我试着在CAD中画条直线,但每次CAD都会出现一个致命错误,另外还提示在画线时定义的点不对,不知什么原因,请大家帮我分析一下,看看是哪方面的问题,多谢!!
[CODE][/CODE]'在CAD内画条直线
Private Sub Command1_Click()
Dim LineObj1 As AcadLine
Dim point1(0 To 2) As AcadPoint, Point2(0 To 2) As AcadPoint
point1(0) = 10#: point1(1) = 1000#: point1(2) = 0#
Point2(0) = 1000#: Point2(1) = 0#: Point2(2) = 0#
' Set LineObj1 = acadapp.ActiveDocument.ModelSpace.AddLine(point1, Point2)
End Sub
'调用AUTOCAD在VB图形窗口中
Public Sub AutoCAD_Appliaction(pic As VB.PictureBox, acadapp As AcadApplication, acadDoc As AcadDocument)
On Error Resume Next
Dim i As Integer
Set acadapp = GetObject(, "AutoCAD.Application.16")
If Err Then
Err.Clear
Set acadapp = CreateObject("AutoCAD.Application.16")
If Err Then
pic.Visible = False
MsgBox Err.Description
pic.Visible = True
Exit Sub
End If
Else
If acadapp.Documents.Count > 1 Then
For i = acadapp.Documents.Count To 1 Step -1
Set acadDoc = acadapp.Documents.Item(i - 1)
acadDoc.Save
acadDoc.Close
Next
End If
End If
Set acadDoc = Nothing
Dim z As AcadMenuGroup
Dim j As AcadToolbar
For Each z In acadapp.MenuGroups
For Each j In z.Toolbars
j.Delete
Next j
Next z
lHwnd = GetParent(GetParent(acadapp.ActiveDocument.hwnd))
If lHwnd = 0 Then Exit Sub
SetParent lHwnd, pic.hwnd
SetWindowText lHwnd, "图形显示"
acadapp.Visible = True
acadapp.WindowState = acMax
End Sub
Private Sub Form_Load()
Call AutoCAD_Appliaction(Picture1, acadapp, acadDoc)
End Sub
Private Sub Form_Unload(Cancel As Integer)
If lHwnd = 0 Then Exit Sub
SetParent lHwnd, 0
End Sub
|
|