乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 123|回复: 8

[求助]关于sendcommand的疑问

[复制链接]

85

主题

1175

帖子

11

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1518
发表于 2005-10-13 22:41:00 | 显示全部楼层 |阅读模式
在vba中用sendcommand,好像与vba执行并不是同步的,比如下面这段代码,多次执行的结果并不是相同的,请问有什么办法能确保sendcommand的语句在acad中执行完毕后再执行sendcommand下一句vb代码?
Sub bb()
      lsp = "(command ""text"" ""mc"" """ & 0 & "," & 0 & """ ""2"" ""0"" """ & "0" & """)"
      ActiveDocument.SendCommand lsp & vbCr
      lsp = "(command ""text"" ""mc"" """ & 1 & "," & 1 & """ ""2"" ""0"" """ & "1" & """)"
      ActiveDocument.SendCommand lsp & vbCr
      lsp = "(command ""text"" ""mc"" """ & 2 & "," & 2 & """ ""2"" ""0"" """ & "2" & """)"
      ActiveDocument.SendCommand lsp & vbCr
      lsp = "(command ""text"" ""mc"" """ & 3 & "," & 3 & """ ""2"" ""0"" """ & "3" & """)"
      ActiveDocument.SendCommand lsp & vbCr
      lsp = "(command ""text"" ""mc"" """ & 4 & "," & 4 & """ ""2"" ""0"" """ & "4" & """)"
      ActiveDocument.SendCommand lsp & vbCr
      lsp = "(command ""text"" ""mc"" """ & 5 & "," & 5 & """ ""2"" ""0"" """ & "5" & """)"
      ActiveDocument.SendCommand lsp & vbCr
      lsp = "(command ""text"" ""mc"" """ & 6 & "," & 6 & """ ""2"" ""0"" """ & "6" & """)"
      ActiveDocument.SendCommand lsp & vbCr
      lsp = "(command ""text"" ""mc"" """ & 7 & "," & 7 & """ ""2"" ""0"" """ & "7" & """)"
      ActiveDocument.SendCommand lsp & vbCr
      lsp = "(command ""text"" ""mc"" """ & 8 & "," & 8 & """ ""2"" ""0"" """ & "8" & """)"
      ActiveDocument.SendCommand lsp & vbCr
      lsp = "(command ""text"" ""mc"" """ & 9 & "," & 9 & """ ""2"" ""0"" """ & "9" & """)"
      ActiveDocument.SendCommand lsp & vbCr
      lsp = "(command ""text"" ""mc"" """ & 10 & "," & 10 & """ ""2"" ""0"" """ & "10" & """)"
      ActiveDocument.SendCommand lsp & vbCr
End Sub
回复

使用道具 举报

16

主题

909

帖子

8

银币

中流砥柱

Rank: 25

铜币
973
发表于 2005-10-16 13:31:00 | 显示全部楼层
就为了生成几个简单的文字,不用那么复杂吧。读你的程序的人会有麻烦的。
回复

使用道具 举报

15

主题

52

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
112
发表于 2005-10-16 16:15:00 | 显示全部楼层
没有办法
回复

使用道具 举报

85

主题

1175

帖子

11

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1518
发表于 2005-10-16 18:50:00 | 显示全部楼层

我只是举例说明连续写text时会出现问题,当然不是实际上这么用。
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2005-10-16 20:02:00 | 显示全部楼层
一定要可以这样
    lsp = "(progn (setvar ""cmdecho"" 0) "
    lsp = lsp & "(command ""text"" ""mc"" """ & 0 & "," & 0 & """ ""2"" ""0"" """ & "0" & """)"
    lsp = lsp & "(command ""text"" ""mc"" """ & 1 & "," & 1 & """ ""2"" ""0"" """ & "1" & """)"
    lsp = lsp & "(command ""text"" ""mc"" """ & 2 & "," & 2 & """ ""2"" ""0"" """ & "2" & """)"
    lsp = lsp & "(command ""text"" ""mc"" """ & 3 & "," & 3 & """ ""2"" ""0"" """ & "3" & """)"
    lsp = lsp & "(command ""text"" ""mc"" """ & 4 & "," & 4 & """ ""2"" ""0"" """ & "4" & """)"
    lsp = lsp & "(command ""text"" ""mc"" """ & 5 & "," & 5 & """ ""2"" ""0"" """ & "5" & """)"
    lsp = lsp & "(command ""text"" ""mc"" """ & 6 & "," & 6 & """ ""2"" ""0"" """ & "6" & """)"
    lsp = lsp & "(command ""text"" ""mc"" """ & 7 & "," & 7 & """ ""2"" ""0"" """ & "7" & """)"
    lsp = lsp & "(command ""text"" ""mc"" """ & 8 & "," & 8 & """ ""2"" ""0"" """ & "8" & """)"
    lsp = lsp & "(command ""text"" ""mc"" """ & 9 & "," & 9 & """ ""2"" ""0"" """ & "9" & """)"
    lsp = lsp & "(command ""text"" ""mc"" """ & 10 & "," & 10 & """ ""2"" ""0"" """ & "10" & """)"
    lsp = lsp & "(setvar ""cmdecho"" 1))"
    Dim fso As New FileSystemObject
    Dim ts As TextStream
    Set ts = fso.CreateTextFile("d:\mycmd.lsp")
    ts.Write lsp
    ts.Close
    ThisDrawing.SendCommand "(load ""d:\mycmd.lsp"")" & vbCr
    Kill "d:\mycmd.lsp"

回复

使用道具 举报

11

主题

40

帖子

4

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
84
发表于 2005-10-17 13:54:00 | 显示全部楼层
这个问题我很就遇到了,我是求各一个任意线条的均分点,因为CAD中没有这样的函数,所以只有用SendCommand,但是经常出错,如果单步执行,则从不出错。
回复

使用道具 举报

85

主题

1175

帖子

11

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1518
发表于 2005-10-17 18:45:00 | 显示全部楼层
请版主指定5楼代码要加载什么库。
另外我的程序是写一个文本,然后用vb对该文本进行一些设置,比如字高、字宽等。必须等lisp执行完后再执行下一句vb代码,这样可以吗?
回复

使用道具 举报

16

主题

909

帖子

8

银币

中流砥柱

Rank: 25

铜币
973
发表于 2005-10-17 21:20:00 | 显示全部楼层
Microsoft Scripting Runtime
回复

使用道具 举报

85

主题

1175

帖子

11

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1518
发表于 2005-10-17 22:11:00 | 显示全部楼层
还是有问题,一步步执行可以,连续执行不行。而且一步步执行的结果也不对,同样各次运行的结果也不一定相同。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-4 14:29 , Processed in 0.979718 second(s), 71 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表