我在AutoCAD vba 模块中编写如下代码 Public WithEvents PLine As AcadLWPolyline ' Use with Modified Event Example Sub Example_Modified() ' This example creates a light weight polyline in model space and ' references the new PolyLine using the public variable (PLine) which ' is setup to intercept Modified events. ' ' This example then modifies the new object, triggering the code ' in the Modified event. Dim points(0 To 9) As Double ' Define the 2D polyline points points(0) = 1: points(1) = 1 points(2) = 1: points(3) = 2 points(4) = 2: points(5) = 2 points(6) = 3: points(7) = 2 points(8) = 4: points(9) = 4 ' Create a light weight Polyline object in model space ' ' * Note: We are returning the new PolyLine object into a Module ' level variable. This allows us to intercept events associated ' with that particular object. Set PLine = ThisDrawing.ModelSpace.AddLightWeightPolyline(points) ThisDrawing.Application.ZoomAll ' Modify object to trigger event. ' ' * Note: The event code for the PolyLine modification will be triggered ' before we move forward and refresh the view, so the line will not ' appear red when the event message box is displayed PLine.Color = acRed ThisDrawing.Regen acAllViewports End Sub Private Sub PLine_Modified(ByVal pObject As AutoCAD.IAcadObject) ' This example intercepts an object's Modified event. ' ' This event is triggered when an object supporting this event is modified ' ' To trigger this code: Modifiy an object connected to this event ' * Note: By connected, we mean the object setup to intercept events using ' the VBA WithEvents statement ' Use the "pObject" variable to determine which object was modified MsgBox "You just modified an object with an ID of: " & pObject.ObjectID End Sub 调试时提示 错误,怎末回事呀?
谢谢赐教! |