应用程序可以使用该函数搜索特定文件名。findfile 应用程序可以指定要搜索的目录,也可以使用当前的 AutoCAD 库路径。 在以下示例代码中,在 AutoCAD 库路径中搜索 acad.pgp 文件:findfile (setq pgpname "acad.pgp") (setq fil (findfile pgpname)) (if fil (setq pgpname fil) (princ (strcat "\nCould not find file " pgpname ". " )) ) 如果调用成功,则变量将设置为完全限定的路径名字符串,如下所示:findfilerefname ; On Windows "<drive>:\\Users\\<username>\\appdata\\roaming\\autodesk\\ <product>\\<release>\\<language>\\support\\acad.pgp" ; or ; On Mac "/Users/<username>/Library/Application Support/Autodesk/Roaming/ <product>/<release>/<language>/support/acad.pgp" 指定路径名时,必须在反斜杠 ( \ ) 前面加上另一个反斜杠,以便 AutoLISP 能够识别该路径名。或者,可以使用斜杠字符 ( / ) 作为目录分隔符。该函数显示一个对话框,其中包含指定目录中指定扩展类型的可用文件列表。这使 AutoLISP 例程可以访问 AutoCAD 的“获取文件”对话框,这是一个标准文件导航对话框。getfiled 对的调用需要四个参数,这些参数确定对话框的外观和功能。应用程序必须指定以下字符串值,每个字符串值可以是:标题,放置在对话框的顶部;默认文件名,显示在对话框底部的编辑框中;以及扩展类型,该类型确定在列表框中为选择而提供的初始文件。最后一个参数是一个整数值,用于指定对话框如何与所选文件进行交互。getfilednil 以下示例用于让用户浏览目录结构并选择文件:getfiled (defun C:DDIR ( ) (setq *dfil (getfiled "Directory Listing" "" "" 2)) (princ (strcat "\nVariable '*dfil' set to selected file " *dfil )) (princ) ) 该变量将设置为您选择的文件,然后可以由其他 AutoLISP 函数使用该文件,或作为对文件名的命令提示符的响应。若要使用此变量响应命令提示符,请输入 !*dfil。*dfil 相关概念父主题: |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2024-12-15 14:45
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.