明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1219|回复: 6

[提问] 用preview打印预览命令打印时如何设置打印份数

[复制链接]
发表于 2015-4-2 11:45 | 显示全部楼层 |阅读模式
20明经币
本帖最后由 tryhi 于 2015-4-2 11:47 编辑

之前是通过(vla-displayplotpreview (vla-get-plot (vla-get-ActiveDocument (vlax-get-acad-object))) acfullpreview)(注:这条命令有个重大BUG,就是无法取得其返回值,不管是按ESC还是右键退出还是右键打印,都返回nil,并且没有任何打印动作)
进行打印预览,然后这样打印
  • (setq $obj (vla-get-plot (vla-get-ActiveDocument (vlax-get-acad-object))))
  • (vla-put-NumberOfCopies $obj 打印份数)
  • (VLA-PLOTTODEVICE $obj)

但因为其打印预览无法取得返回值的问题,也就说无法自动判断用户是按了取消还是按了打印所以选择使用(vl-cmdf "preview")
但假如直接使用(vl-cmdf "preview")进行打印预览并打印的话,如何设置打印份数,貌似只能打印一份

"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2015-4-2 13:07 | 显示全部楼层
1.(vl-cmdf "preview")
2.(if ( >  打印份数 1)(progn(vla-put-numberofcopies  $obj (1- 打印份数))(vla-plotToDevice $obj)))
回复

使用道具 举报

 楼主| 发表于 2015-4-2 14:16 | 显示全部楼层
liu22737 发表于 2015-4-2 13:07
1.(vl-cmdf "preview")
2.(if ( >  打印份数 1)(progn(vla-put-numberofcopies  $obj (1- 打印份数))(vla- ...

如果我设置打印3份,然后在预览的时候选择退出呢?这时候就变成了打印两份出来
回复

使用道具 举报

 楼主| 发表于 2015-4-2 20:31 | 显示全部楼层
这打印命令真让人不省心
回复

使用道具 举报

发表于 2015-4-3 09:18 | 显示全部楼层
tryhi 发表于 2015-4-2 14:16
如果我设置打印3份,然后在预览的时候选择退出呢?这时候就变成了打印两份出来

VB可以佂测打印机状态,但是公司内都是网络打印机,连多台电脑,判断困难

这个贴子使用笨办法:佂测打印日志,判断用户预览之后 《 退出 OR 打印》

http://bbs.mjtd.com/thread-113258-2-1.html

直接对预览命令判断《 退出 OR 打印》,我还没找到办法,
你找到了通知一声
回复

使用道具 举报

 楼主| 发表于 2015-4-11 17:10 | 显示全部楼层
找不到。。
回复

使用道具 举报

发表于 2015-4-11 20:26 | 显示全部楼层
没有发现vla-displayplotpreview有楼主描述的打印和退出两个选项,只有一个退出选项,所以vla-displayplotpreview时用户不可能进行打印操作。AutoCAD2008。

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-20 06:30 , Processed in 0.233034 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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