明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2516|回复: 12

这个问题怎样解决

  [复制链接]
发表于 2003-9-6 23:07:00 | 显示全部楼层 |阅读模式
用VB编了一个小程序,经编译后作为外部命令使用pl.exe。在程序调用时要使用
"shell" & "pl.exe" & chr(13)语句。
但在每次调用时,总是将 AutoCAD shell 窗口激活,还要人工关闭该窗口,太麻烦了。
发表于 2003-9-7 06:58:00 | 显示全部楼层
使用Autolisp函数:
(startapp appcmd [file])
 楼主| 发表于 2003-9-7 08:56:00 | 显示全部楼层

只想用VB编程

只想用VB编程
发表于 2003-9-7 12:28:00 | 显示全部楼层
不明白你是怎么做的,如下的过程没有你说的DOS黑框出来:
  1. Sub RunNotepad()
  2.     Shell "notepad.exe"
  3. End Sub
 楼主| 发表于 2003-9-7 15:23:00 | 显示全部楼层
使用Shell "notepad.exe"不是不出来,只是一闪而过。但是我编的外部命令发出后,却停在那个黑框上了,必须要人工关闭才能接着运行。
发表于 2003-9-7 19:15:00 | 显示全部楼层
我这里没有你说的情况。能否具体一点。
 楼主| 发表于 2003-9-7 19:44:00 | 显示全部楼层
你试试这个工具条:
Sub main() '连接AutoCad
  On Error Resume Next
  Set acadapp = GetObject(, "autocad.application")  
  If Err Then
     Err.Clear
     Set acadapp = CreateObject("autocad.application")
     If Err Then
        MsgBox Err.Description
        Exit Sub
     End If
  End If

  acadapp.WindowState = acMax
  Dim cmg As AcadMenuGroup
  Dim ntb As AcadToolbar
  Dim ntbb As AcadToolbarItem
  Dim com As String
  Set cmg = acadapp.MenuGroups.Item(0)
  Set ntb = cmg.Toolbars.Add("GJT")
  com = Chr(3) & Chr(3) & "shell" & Chr(13) & "notepad.exe" & Chr(13)  
  Set ntbb = ntb.AddToolbarButton(ntb.Count + 1, "Open", "Open Macro", com, False)
End Sub
发表于 2003-9-7 20:22:00 | 显示全部楼层
你这里指的是在工具按钮中的宏,应该使用我提供的LISP方法来解决。
  1. com = Chr(3) & Chr(3) & "(startapp" & Chr(13) & "notepad.exe" & Chr(13)& ")"
  2. Set ntbb = ntb.AddToolbarButton(ntb.Count + 1, "Open", "Open Macro", com, False)
复制代码

试试看
 楼主| 发表于 2003-9-8 15:02:00 | 显示全部楼层
问题依然存在!
发表于 2003-9-8 16:22:00 | 显示全部楼层
试试以下程序,在VBA调试通过,你可以改到VB中:
  1. Sub AddButton()
  2.     Dim cmg As AcadMenuGroup
  3.     Dim ntb As AcadToolbar
  4.     Dim ntbb As AcadToolbarItem
  5.     Dim com As String
  6.     Set cmg = MenuGroups.Item(0)
  7.     'cmg.Toolbars("GJT").Delete
  8.     Set ntb = cmg.Toolbars.Add("GJT")
  9.     com = Chr(3) & Chr(3) & Chr(16) & "(startapp""notepad.exe"")(princ)" & Chr(16) & vbCr
  10.     Set ntbb = ntb.AddToolbarButton(ntb.Count + 1, "Open", "Open Macro", com, False)
  11. End Sub
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-28 14:51 , Processed in 0.185497 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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