找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

楼主: grs432

[已解决] 块与块连线程序求助

[复制链接]

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-12-2 09:57:39 | 显示全部楼层
grs432 发表于 2014-12-2 09:46
另外,询问一下ST老师,在CAD中的编号从1~10这样的序号排列和01~10的排列有区别吗?我在使用好多前缀后缀 ...

按字符串处理即可

_$ (xd::string:strpad 1 2 "0" 0)
"01"
_$ (xd::string:strpad 1 3 "0" 0)
"001"
_$

点评

(setq str (getstring "\n前缀: " )) (setq num (getint "\n编号: ") ) (xd::string:strpad num 2 "0" 0)) ) 编号前加0我自弄了会,怎么加都不对,还是基础不好。  详情 回复 发表于 2014-12-2 11:29
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

 楼主| 发表于 2014-12-2 10:08:44 | 显示全部楼层

早上我刚测试了导出EXCEL的那个,没有见CAD图纸下有表格生成,我还把原来注释的那段给恢复了,还是没有导出的动作,是函数问题还是我的问题。其实我现在想验证一下,因为第一次程序在没有加载其它参数的时候,我用11.08号的函数库手动加载XD::Excel:createToFile是可以导出表格的,但是我现在换成11.30的函数库,换回去有点麻烦,就先问问您了。。

点评

不知道表格的宽度适应文字的参数怎么调节,还有就是数据取取整数,不要后边的小数,此参数在哪里设置。 [attachimg]11776[/attachimg]  详情 回复 发表于 2014-12-2 10:37
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

 楼主| 发表于 2014-12-2 10:37:19 | 显示全部楼层
grs432 发表于 2014-12-2 10:08
早上我刚测试了导出EXCEL的那个,没有见CAD图纸下有表格生成,我还把原来注释的那段给恢复了,还是没有导 ...

不知道表格的宽度适应文字的参数怎么调节,还有就是数据取取整数,不要后边的小数,此参数在哪里设置。
QQ截图20141202101653.png
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-12-2 10:38:49 | 显示全部楼层
grs432 发表于 2014-12-2 10:37
不知道表格的宽度适应文字的参数怎么调节,还有就是数据取取整数,不要后边的小数,此参数在哪里设置。
...

可以生成 xls 的, 11.30 函数库
  1. (defun c:XDTB_CalCircuit (/ ss nl height)
  2.   (if (setq ss (ssget '((0 . "text") (-3 ("XDCircuit")))))
  3.     (progn
  4.       (setq
  5.         height (xdrx_getpropertyvalue (ssname ss 0) "height")
  6.         nl     (mapcar
  7.                  '(lambda (x / pl)
  8.                     (if        (setq pl (handent (vlax-ldata-get x "Circuit")))
  9.                       (list (xdrx_getpropertyvalue x "textstring")
  10.                             (vlax-ldata-get x "Power")
  11.                             (xdrx_xdata_get x "XDCircuit")
  12.                             (vlax-ldata-get x "Type")
  13.                             (vlax-ldata-get x "Power")
  14.                             (itoa (xdrx_getpropertyvalue pl "numVerts"))
  15.                             (* (vlax-ldata-get x "Power")
  16.                                (xdrx_getpropertyvalue pl "numVerts")
  17.                             )
  18.                             (vlax-ldata-get x "Position")
  19.                             " "
  20.                             " "
  21.                       )
  22.                     )
  23.                   )
  24.                  (xdrx_pickset->ents ss)
  25.                )
  26.         nl     (cons "统计表"
  27.                      (cons
  28.                        '("回路"           "控制"    "编号"    "类型"
  29.                          "功率"           "数量"    "总功率"  "位置"
  30.                          "备注"           " "
  31.                         )
  32.                        (vl-sort nl '(lambda (x1 x2) (< (car x1) (car x2))))
  33.                      )
  34.                )
  35.       )
  36.       (if (setq p (getpoint "\n插入点<回车显示>: "))
  37.         (xd::table:make
  38.           (reverse (cons '(" ") (reverse nl)))
  39.           p
  40.           (* 3 height)
  41.           height
  42.         )
  43.         (foreach x nl
  44.           (princ "\n")
  45.           (princ x)
  46.         )
  47.       )
  48.       (xd::excel:createToFile
  49.         (strcat        (getvar "dwgprefix")
  50.                 (vl-filename-base (getvar "dwgname"))
  51.                 ".xls"
  52.         )
  53.         (cdr nl)
  54.       ) ;_写出 excel 文件
  55.       (xdrx_system_shellexecute
  56.         (strcat        (getvar "dwgprefix")
  57.                 (vl-filename-base (getvar "dwgname"))
  58.                 ".xls"
  59.         )
  60.       )
  61.     )
  62.   )
  63.   (princ)
  64. )

点评

现在测试没有问题了,我是11.30下的函数库,刚查看了建立时间11.29的,现在更新11.30的没有问题了。只是表格还是上边的文字和表格不适应,且我想将数据保留整数。。  详情 回复 发表于 2014-12-2 11:32
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

 楼主| 发表于 2014-12-2 11:29:27 | 显示全部楼层
st788796 发表于 2014-12-2 09:57
按字符串处理即可

_$ (xd::string:strpad 1 2 "0" 0)

           (setq str (getstring "\n前缀: " ))
           (setq num (getint "\n编号: ") )
               (xd::string:strpad num 2 "0" 0))       
      )
编号前加0我自弄了会,怎么加都不对,还是基础不好。

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

 楼主| 发表于 2014-12-2 11:32:06 | 显示全部楼层
st788796 发表于 2014-12-2 10:38
可以生成 xls 的, 11.30 函数库

现在测试没有问题了,我是11.30下的函数库,刚查看了建立时间11.29的,现在更新11.30的没有问题了。只是表格还是上边的文字和表格不适应,且我想将数据保留整数。。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-12-2 11:32:32 | 显示全部楼层
grs432 发表于 2014-12-2 11:29
(setq str (getstring "\n前缀: " ))
           (setq num (getint "\n编号: ") )
              ...

不是这样用的,只要在  text_make 时用这个函数即可

点评

xdrx_text_make )要添加这个(xd::string:strpad num 2 "0" 0)) 程序中如下的位置 (不知道我指的位置对不?) 想实现序号前加0 加一下调试一下,弄了半天,还是不知道怎么加呢?ST大,指点一下。{:soso  详情 回复 发表于 2014-12-2 14:12
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-12-2 11:34:58 | 显示全部楼层
grs432 发表于 2014-12-2 11:32
现在测试没有问题了,我是11.30下的函数库,刚查看了建立时间11.29的,现在更新11.30的没有问题了。只是 ...

字体设置原因,自己设置一个字体样式,同时在 tablestyle 中将表格文字设置为当前字体样式,正在考虑用 api 写一个创建自定义 tablestyle
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

 楼主| 发表于 2014-12-2 14:12:33 | 显示全部楼层
st788796 发表于 2014-12-2 11:32
不是这样用的,只要在  text_make 时用这个函数即可

xdrx_text_make <基点> <字符串> <字高><转角> )要添加这个(xd::string:strpad num 2 "0" 0))   
程序中如下的位置 (不知道我指的位置对不?)  
  1. (setq txt (xdrx_text_make
  2.                         p1
  3.                         (strcase str)
  4.                         (distof (dcl_control_gettext huilu_form1_height))
  5.                         0.0

想实现序号前加0
加一下调试一下,弄了半天,还是不知道怎么加呢?ST大,指点一下。{:soso_e127:}{:soso_e127:}{:soso_e127:}




论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-12-2 17:02:07 | 显示全部楼层
grs432 发表于 2014-12-2 14:12
xdrx_text_make    )要添加这个(xd::string:strpad num 2 "0" 0))   
程序中如下的位置 (不知道我指的 ...

http://bbs.xdcad.net/thread-677386-1-1.html

绘制、创建、统计 合到一起了

点评

我现在去测试一下,现在应该接近完美的工具呀!!辛苦了ST老师这么长时间了。。 忘记问ST老师了,以前我说了有个过滤层前缀名的那个选项,是否考虑加一下,比  详情 回复 发表于 2014-12-2 17:32
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

 楼主| 发表于 2014-12-2 17:32:59 | 显示全部楼层
st788796 发表于 2014-12-2 17:02
http://bbs.xdcad.net/thread-677386-1-1.html

绘制、创建、统计 合到一起了

我现在去测试一下,现在应该接近完美的工具呀!!{:soso_e113:}辛苦了ST老师这么长时间了。。{:soso_e183:}{:soso_e179:}{:soso_e181:}
忘记问ST老师了,以前我说了有个过滤层前缀名的那个选项,是否考虑加一下,比名图层名前缀为XXX,这样子在图层那个位置显示的图层会少一些,比较好选择。。{:soso_e100:}
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-12-2 17:43:39 | 显示全部楼层
grs432 发表于 2014-12-2 17:32
我现在去测试一下,现在应该接近完美的工具呀!!辛苦了ST老师这么长时间了。。{:soso_e183 ...

这个你要有具体要求,我可不知道你们的层名设置

点评

就是UI边上加一列过滤前缀名吧!可以自定义,,我个人觉得这样子通用吧!下图UI有点丑,我就是示意一下,别在意呀!!其实这个功能加不加不影响用,加了会方便些。 [attachimg]11797[/attachimg]  详情 回复 发表于 2014-12-2 17:54
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

 楼主| 发表于 2014-12-2 17:54:26 | 显示全部楼层
st788796 发表于 2014-12-2 17:43
这个你要有具体要求,我可不知道你们的层名设置

就是UI边上加一列过滤前缀名吧!可以自定义,,我个人觉得这样子通用吧!下图UI有点丑,我就是示意一下,别在意呀!!其实这个功能加不加不影响用,加了会方便些。{:soso_e123:}

QQ截图20141202175230.png


论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-12-2 20:23:42 | 显示全部楼层
grs432 发表于 2014-12-2 17:54
就是UI边上加一列过滤前缀名吧!可以自定义,,我个人觉得这样子通用吧!下图UI有点丑,我就是示意一下, ...

过滤不是这样写,这样的话还是固定的,如果需要输入前缀,前面应该用 textbox

另外使用过滤就不能用 layer 样式,只能用 List

点评

您说的对,我弄错了。前面是个txtbox,写过滤前缀名,后边是显示层的list。这样子应该对吧!!不用加开启过滤开关。  详情 回复 发表于 2014-12-2 20:40
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

 楼主| 发表于 2014-12-2 20:40:39 | 显示全部楼层
st788796 发表于 2014-12-2 20:23
过滤不是这样写,这样的话还是固定的,如果需要输入前缀,前面应该用 textbox

另外使用过滤就不能用 l ...

您说的对,我弄错了。前面是个txtbox,写过滤前缀名,后边是显示层的list。这样子应该对吧!!不用加开启过滤开关。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-12-19 00:00 , Processed in 0.553669 second(s), 56 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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