明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1588|回复: 2

关于AUTOCAD VBA二次开发教程第87页那道题目的出错提出

[复制链接]
发表于 2006-9-23 09:18:00 | 显示全部楼层 |阅读模式

Public Sub CreateCircleToText()
    Dim objText As AcadText
    Dim ptPick As Variant
    ThisDrawing.Utility.GetEntity objText, ptPick, "拾取文字:"
   
    ' 获得文字的包围框
    Dim ptMin As Variant, ptMax As Variant
    objText.GetBoundingBox ptMin, ptMax
   
    ' 获得圆心和半径
    Dim ptCenter(0 To 2) As Double
    ptCenter(0) = (ptMin(0) + ptMax(0)) / 2
    ptCenter(1) = (ptMin(1) + ptMax(1)) / 2
    ptCenter(2) = 0
    Dim radius As Double
    radius = Sqr((ptMin(0) - ptMax(0)) ^ 2 + (ptMin(1) - ptMax(1)) ^ 2) / 2
   
    ' 创建圆
    Dim objCircle As AcadCircle
    Set objCircle = ThisDrawing.ModelSpace.AddCircle(ptCenter, radius)
End Sub

最后运行结果是弹出一个MSGBOX,提示"类型不匹配"

发表于 2006-9-23 23:43:00 | 显示全部楼层
objText定义为AcadText,所以选择的只能是单行文字。检查一下是不是这儿出错了。
 楼主| 发表于 2006-9-24 16:26:00 | 显示全部楼层
恩,说的是,昨天和你一起出书的同志已经帮我解决了问题,谢谢王老哥
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 22:28 , Processed in 0.160745 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表