明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2447|回复: 11

【右键菜单】函数修正

[复制链接]
发表于 2020-6-24 00:34 | 显示全部楼层 |阅读模式
本帖最后由 1028695446 于 2020-6-24 01:19 编辑

原贴地址,请移步至:http://bbs.mjtd.com/forum.php?mod=viewthread&tid=101509&extra=page%3D1%26filter%3Dtypeid%26typeid%3D14&page=1


本次主要对该 “右键菜单函数“ 做个补充完善:
问题描述:在布局中图纸空间中使用该右键菜单函数,临时生成的菜单,只显示列表框和背景遮罩,但是不显示文字
原因分析:使用 vla-addtext 函数,始终使用的是模型空间,所以在 布局中的图纸空间 使用该右键菜单函数,生成的临时文字在模型空间中,并不在图纸空间中
解决思路:增加个简单的判断:当前是否在布局中图纸空间

注:以下代码,为了顺带解释下 "tilemode"和"CVPORT"2个参数的组合表达的情况,所以判断看起来比较冗杂
...
(if (not *YH_doc*)(setq *YH_doc* (vla-get-activedocument (vlax-get-acad-object))));获取当前图档指针               
(setq a (=(getvar "tilemode")0) );;模型1,布局0               
(setq b (=(getvar "CVPORT")1));;图纸空间1               
(cond
        ((and a b);布局中的图纸空间
                (setq YH_spc (vla-get-PaperSpace *YH_doc*))
        )
        ((and a (not b));布局中的模型空间
                (setq YH_spc (vla-get-modelspace *YH_doc*))
        )
        ((and (not a) (not b));模型空间
                (setq YH_spc (vla-get-modelspace *YH_doc*))
        )        
)
(setq YH_text (vla-addtext YH_spc WZ (vlax-3d-point WPT) WZhigh))

...


简化下就是
...
(if (not *YH_doc*)(setq *YH_doc* (vla-get-activedocument (vlax-get-acad-object))));获取当前图档指针               
(if (and
        (zerop (getvar "tilemode"))
        (=(getvar "CVPORT")1)
    )
        (setq YH_spc (vla-get-PaperSpace *YH_doc*))
        (setq YH_spc (vla-get-modelspace *YH_doc*))                        
)        

(setq YH_text (vla-addtext YH_spc WZ (vlax-3d-point WPT) WZhigh))

...
请自行去原贴页面下载源码,自行搜索替换相关内容

以下附上自用的相关应用



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x

点评

再增加个插入前后缀就更好了  发表于 2024-3-18 10:39

评分

参与人数 1明经币 +1 金钱 +10 收起 理由
tigcat + 1 + 10 很给力!

查看全部评分

发表于 2020-6-24 11:12 | 显示全部楼层
要是支持天正就好了
发表于 2020-12-6 18:57 | 显示全部楼层
不能用啊,楼主
发表于 2020-12-10 16:56 | 显示全部楼层
不錯用,很棒!
謝謝分享!
发表于 2021-3-27 22:06 | 显示全部楼层
能不能搞成3行吗,2行内容多就不够看.
发表于 2021-6-9 21:22 | 显示全部楼层
好用,能增加功能,支持属性块文字修改,就完美了
发表于 2021-8-12 21:24 | 显示全部楼层
这个使用起来相当方便啊,取代词库!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-14 23:15 , Processed in 0.146910 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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