乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 5|回复: 5

[编程交流] 使用GetField

[复制链接]

12

主题

119

帖子

107

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
60
发表于 2022-7-6 06:19:30 | 显示全部楼层 |阅读模式
我用位代码9设置了一个getfield例程。如果我理解正确,我应该能够用这个设置覆盖现有文件。它不会覆盖我选择的文件。它将覆盖当前图形。有什么想法吗?
 
杰森
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-6 06:36:28 | 显示全部楼层
我认为1号文件将取代再次写入的文件。请试试看。
回复

使用道具 举报

12

主题

119

帖子

107

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
60
发表于 2022-7-6 06:49:05 | 显示全部楼层
 
没有运气。。它仍然不会覆盖文件
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-6 07:05:43 | 显示全部楼层
对不起,这是帮助文档中的解释,应该是32。
 
  1. [b][i]32[/i][/b] (bit 5) If this bit is set and bit 0 is set (indicating  that a new file is being specified), users will not be warned if
  2. they are about  to overwrite an existing file.
  3. The alert box to warn users that a file of the  same name already exists will not be displayed; the old file will just be  replaced.
回复

使用道具 举报

12

主题

119

帖子

107

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
60
发表于 2022-7-6 07:11:00 | 显示全部楼层
嗯,它的工作原理是警告框没有显示,但它仍然没有覆盖文件!令人沮丧的。。。这是我到目前为止的代码。。
 
  1. (DEFUN C:ARCHIVER ( / FN QF CMD)
  2. (alert "THIS COMMAND CAN NOT OVERWRITE AN\n EXISTING DRAWING.  SPECIFY A NEW DRAWING NAME.")
  3. (setq CMD (getvar "cmdecho"))
  4. (setq FN (getfiled "Save Archive As" "" "dwg" 1))
  5. (if (= FN nil )
  6.    (progn
  7.     (princ)(princ "...ARCHIVER ABORTED...")(princ))
  8.    (progn
  9.     (command "saveas" "" FN "")
  10.     (command "-xref" "b" "*" "")
  11.     (command "zoom" "e")
  12.     (alert "MAKE SURE ALL XREFS HAVE BEEN BOUND.\nTYPE XREF AT THE COMMAND LINE.")
  13.     (princ)
  14.     (setvar "cmdecho" CMD)
  15.     (command "-purge" "all" "*" "N")
  16.     (COMMAND "QSAVE")
  17.     )
  18.    ))

 
因此,活动图形应保存到新文件中,并绑定和清除。。。但是,如果我选择了一个存在的图形名称,该命令将在活动图形中完成,并且不会保存到我选择的图形名称。。。
回复

使用道具 举报

6

主题

21

帖子

13

银币

初来乍到

Rank: 1

铜币
33
发表于 2022-7-6 07:30:27 | 显示全部楼层
 
我认为,如果将getfield标志从1更改为9(请参阅下面的代码),save命令可能适用于新的或现有的文件。请参阅LeeMac在所附cadtutor链接中的帖子,“我将使用位代码9(8+1)来表示现有/或创建新的。”
http://www.cadtutor.net/forum/showthread.php?36805-GetField公司
 
希望这有帮助。
 
  1. (setq FN (getfiled "Save Archive As" "" "dwg" [b][size=4][color=purple]9[/color][/size][/b]))
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-10 18:22 , Processed in 0.363414 second(s), 64 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表