[注意]奇怪
efan2000发表于2003-10-1 0:02:00static/image/common/back.gif自己做了个,可以看看效果。在VBA中实现鼠标事件
该组件可以实现鼠标的按下、弹起、双击和移动的事件捕捉。
注意:Enabled属性设置为True表示允许事件的触发,之后一定要将其设置为Fa
奇怪,
ThisDrawing.ModelSpace(0).TextString = Round(ehObj.ConvertScreenToWorldX(X, Y) + 0.0000000001, 4) & "," & Round(ehObj.ConvertScreenToWorldY(X, Y) + 0.0000000001, 4)
在这个1.dwg中会出现不支持TextString属性或方法的错误.
在其它文件或新建文件中却正常运行.
删除1.dwg中的对象后也能正常运行.
始终没找到原因.
Option Explicit
Private WithEvents ehObj As EFHook.Hook
Private Sub CommandButton1_Click()
On Error GoTo ErrTrap
Me.Hide
Set ehObj = New Hook
ehObj.Enabled = True
ThisDrawing.Utility.GetPoint
ehObj.Enabled = False
Set ehObj = Nothing
Me.Show
Exit Sub
ErrTrap:
ehObj.Enabled = False
Set ehObj = Nothing
Unload Me
End Sub
Private Sub ehObj_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
ThisDrawing.ModelSpace(0).TextString = Round(ehObj.ConvertScreenToWorldX(X, Y) + 0.0000000001, 4) & "," & Round(ehObj.ConvertScreenToWorldY(X, Y) + 0.0000000001, 4)
ThisDrawing.ModelSpace(0).Update
End Sub
这个是文字对象(Text、MText)和属性对象(Attribute、AttributeReference)才有的属性,检查一下是不是ThisDrawing.ModelSpace(0)的类型不对。 确是如此,谢谢efan兄! 看下我编的这个倒角标注程序,是引用acadx.arx的,如不能用,就要引用一下acadx.arx就行了
efan兄的那个dll是用vb写的吗?高手哦,不过好象不是很准,因为跟状态栏的坐标对不起来,而且速度很慢,可能实用性不是很强,还是用acadx.arx吧,不过它也有个不足,大家用过了就知道了. 看一下我写的这个倒角标注程序,是引用acadx.arx做的,如不能用,引用一下acadx.arx就行了
efan兄的这个dll是用vb写的?高手哦,能否上传一下源程序?不过速度好象很慢,可能实用性不强,
看一下我写的这个倒角标注程序,是引用acadx.arx做的,如不能用,引用一下acadx.arx就行了
efan兄的这个dll是用vb写的?高手哦,能否上传一下源程序?不过速度好象很慢,可能实用性不强, 有谁知道有没有For AutoCAD 2004的 AcadX.arx,我的系统中只有AutoCAD2K4. :=( 经查询,ACADX.ARX的来源为www.caddzone.com网站。
而目前这个网站不能浏览。
经过Autodesk讨论组查询,得到的消息了2004版本至今还没有。 下载下来试一下 以后学习,先记下
页:
1
[2]