明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2209|回复: 2

测试鼠标双击问题

[复制链接]
发表于 2010-1-19 00:51:00 | 显示全部楼层 |阅读模式

我画了任意两条线A、B,其中A加到那“SS”里面,双击的B时还是会响应A的双击事件,应该怎么去控制只有双击A的时候才响应双击事件?请高手们指点一下啊!!!

(defun c:asdf ( / ss )
  (setq ss (vlax-ename->vla-object (car (entsel))))
  (vlr-mouse-reactor (list ss) '((:vlr-beginDoubleClick . fdsa)))
  )
(defun fdsa ( a b )
  (princ "\n")
  (princ (vla-get-Length (nth 0 (vlr-data a))))
  (princ "\n")
  (princ b)
  (princ "\n")
  (princ "yes")
  (princ)
  )

发表于 2010-1-19 08:38:00 | 显示全部楼层

因为你的程序中没有判断当前双击的对象是不是你所附着的对象,所以不管你双击谁都会有信息的,可以这样改一下:

(defun c:asdf (/ ss)
  (setq ss (vlax-ename->vla-object (car (entsel))))
  (vlr-mouse-reactor
    (list ss)
    '((:vlr-beginDoubleClick . fdsa))
  )
)
(defun fdsa (a b)

  (setq en (nentselp (car b)))
  (if en
    (progn
      (if (> (length en) 2)
 (progn
   (setq en (last (last en)))
 )
 (progn
   (setq en (car en))
 )
      )
      (if (eq (vlax-vla-object->ename (nth 0 (vlr-data a))) en)
 (progn
   (princ "\n")
   (princ (vla-get-Length (nth 0 (vlr-data a))))
   (princ "\n")
   (princ b)
   (princ "\n")
   (princ "yes")

 )
 (princ "\n所选的直线不是附着的直线!")
      )
    )
  )
  (princ "\n")
  (princ)

)

 楼主| 发表于 2010-1-20 00:22:00 | 显示全部楼层

谢谢英雄无敌

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

本版积分规则

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

GMT+8, 2024-10-1 21:45 , Processed in 0.237992 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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