土木在线论坛 \ 建筑设计 \ CAD下载及教程 \ 优化VBA文字对齐程序

优化VBA文字对齐程序

发布于:2005-12-18 12:20:18 来自:建筑设计/CAD下载及教程 [复制转发]
我写的一个绘制文字程序,不加对齐语句(默认左下对齐),可以绘制在插入点。想左中对齐,可是不知道怎么回事,文字自己跑到原点那儿去了。加上一个从原点到指定点的移动语句才愿意回去。我心里很恼火。另外,文字变量中要求上下重叠的控制字符它也不买帐,竟然给原样印出了,不知道它为什么这么犟,想请那位哥帮忙改改程序,找找原因。谢!

全部回复(3 )

只看楼主 我来说两句
  • tongmingniao
    tongmingniao 沙发
    想左中对齐,可是不知道怎么回事,文字自己跑到原点那儿去了。加上一个从原点到指定点的移动语句才愿意回去。
    原因:没有指定文字对齐点。textObj.TextAlignmentPoint = InsPoint

    文字变量中要求上下重叠的控制字符它也不买帐,竟然给原样印出了!
    原因:必须创建多行文字才能支持控制字符。

    修改后的vba程序如下:
    Sub AlignMtext()
    Dim textObj As AcadMText
    Dim TextStr As String
    Dim InsPoint(0 To 2) As Double
    Dim TextWidth As Double
    Dim TextHeight As Double
    Dim pointObj As AcadPoint
    Dim BS As Long
    Dim TS As Long
    Dim SC As Long
    BS = Asc("\")
    TS = Asc("S")
    SC = Asc("^")
    TextStr = Chr(BS) + Chr(TS) + "0.8" + Chr(SC) + "8.9"
    InsPoint(0) = 10
    InsPoint(1) = 10
    InsPoint(2) = 0
    TextWidth = 50
    TextHeight = 2
    Set textObj = ThisDrawing.ModelSpace.AddMText(InsPoint, TextWidth, TextStr)
    textObj.AttachmentPoint = acAttachmentPointMiddleLeft
    textObj.height = TextHeight
    textObj.Rotation = 0
    MsgBox "The AttachmentPoint is set to the default "
    ZoomExtents
    End Sub
    2009-03-21 00:58:21

    回复 举报
    赞同1
  • cjj371
    cjj371 板凳
    没有人回复,没有人愿意帮帮我吗?
    2005-12-22 09:39:22

    回复 举报
    赞同0
加载更多
这个家伙什么也没有留下。。。

CAD下载及教程

返回版块

52.08 万条内容 · 665 人订阅

猜你喜欢

阅读下一篇

天正7注册机

天正7注册机,欢迎下载

回帖成功

经验值 +10