明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
12
返回列表 发新帖
楼主: nonsmall

[【不死猫】] [原创] 巧用sendkeys 方法操作CAD内置命令窗体

    [复制链接]
发表于 2009-2-4 22:40:00 | 显示全部楼层
希望高手们提供更多的这类方法
发表于 2012-8-9 13:26:53 | 显示全部楼层
使用sendkeys方法很好用,但会出出初始化VBA的提示,此时CAD反应很慢
(defun c:wd ()
  (vl-load-com)
  (vla-eval (vlax-get-acad-object) "Sendkeys \"close\"")
  (vla-eval (vlax-get-acad-object) "Sendkeys \"{ENTER}\"")
)
(defun c:ss ()
  (vl-load-com)
  (vla-eval (vlax-get-acad-object) "Sendkeys \"qsave\"")
  (vla-eval (vlax-get-acad-object) "Sendkeys \"{ENTER}\"")
)
上面代码一运行就提示初始化VBA,同时屏蔽上出现close或qsave,此时就卡住了,下一行的发送enter的命令也发不出了,请教如何解决?
发表于 2012-8-9 19:18:54 | 显示全部楼层
好啊,相当好使,
    我这里有个疑问,哪位知道还请帮忙解决:
我是调用的 “选择性粘贴 ” 对话框
(defun c:text()
(Vlax-Invoke-Method (Vlax-Get (Vlax-Get-Acad-Object) 'ActiveDocument) 'SendCommand (car (list "pastespec "
(Vlax-Invoke-Method (Vlax-Get-Or-Create-Object "WScript.Shell" ) 'Sendkeys "%A{DOWN}{DOWN}{DOWN}{Enter}"))))
)

“选择性粘贴” 是要自己选个粘贴点的 , 之前我都是在"_pastespec" ...后面加一句 (setq pt0(getpoint)) 把粘贴点指定赋值到 PT0 (因为后面要用到) ,现在用这个方法的话,我应该怎样选点 赋到 PT0 呢?
哪位前辈知道还请解答一下啊

发表于 2024-5-2 12:21:00 | 显示全部楼层
LSP模拟按键代码,正在找这个!感谢分享
发表于 2024-5-2 12:23:32 | 显示全部楼层
模拟QSELECT快速选择,标注测量值全局比例在某个区间的对象
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-17 13:43 , Processed in 0.229141 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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