明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 531|回复: 3

[提问] 请教剪切板操作的流程和方法

[复制链接]
发表于 2020-9-13 09:21:10 | 显示全部楼层 |阅读模式
近期打算优化自己的一个插件,功能是通过复制、粘贴的方式完成递增
思路:
1、在复制时,用ssgetfirstt对所有被复制图元进行判断是否为要进行的图元,并进行登记
2、在粘贴后,用entlast对生成的图元进行分析和判断,写入递增数据
通过大量的实验,基本可以断定的是:
AutoCAD的复制顺序与粘贴顺序无关,复制时无论怎么选,粘贴的顺序都是按对应复制的图元的句柄/图元名的顺序生成的。
因为不知道Windows剪切板的操作流程和原理,就一个黑匣子一样,不知道复制和粘贴这两个过程,AutoCAD是怎样建立两个过程之间的对应关系,是否有这方面的资料可供参考,谢谢
在网上找了一段代码
  1. (defun getcopy (/ HTML RESULT)
  2.   (and (setq HTML (vlax-create-object "htmlfile"))
  3.        (setq RESULT (vlax-invoke (vlax-get (vlax-get HTML 'PARENTWINDOW) 'CLIPBOARDDATA) 'GETDATA "Text"))
  4.        (vlax-release-object HTML)
  5.        )
  6.   RESULT
  7.   )
本人对Autolisp还马马虎虎,对Vlisp一直感觉在门口打转,上面这段代码,只能得到剪切板的文字部分,应该是(vlax-get (vlax-get HTML 'PARENTWINDOW) 'CLIPBOARDDATA) 'GETDATA "Text")最后的这个“Text”决定的,请教如何能得到当前剪切板的完整信息,Autolisp函数的参数,有资料方便查找和学习,如:《AutoLISP函数参考(明经翻译版)》,Vlax函数仿佛只介绍函数名,后面的参数怎么获得呢?有点摸不着头绪。
谢谢。
发表于 2020-9-13 17:17:15 | 显示全部楼层
不死猫镇魔了
 楼主| 发表于 2020-9-13 18:58:39 | 显示全部楼层

什么意思呀?
发表于 2020-9-13 19:08:42 | 显示全部楼层

我以为不死猫来求助了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-17 17:13 , Processed in 0.140483 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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