尘缘一生 发表于 2022-12-13 21:54:33

再发一遍图库代码(源码)

本帖最后由 尘缘一生 于 2022-12-14 18:05 编辑

图库管理,这个功能是很有用的,目前,基本成熟起来了,源码记住是 《信》的,不是我原创

所以,我不能发布全面出来,再者,也提不出各种嵌套,

代码最大的价值,我一直认为,是一种思路,概念,具体代码,就去写就是了,

鉴于从前发的,BUG不少,所以,还是发下最新修改的这一版。



本次代码,是支持三种版本,简体,繁体,英文
一套代码,支持三种版本,也是我这几天着重的一种探索,并不想写三套代码出来,
因为,实在是没有功夫去维护去,我想这也是大家都希望的一种方式。

对重要的函数,发一下


[*];;语言版本:获得 $Lgver全局变量--(一级)-----
[*](defun sllanguage (/ str)
[*](setq str (getvar "syscodepage")) ;显示所在地区的代码
[*](cond
[*]    ((= str (strcase "ansi_936"));;CAD是简体版)
[*]      (setq $Lgver 1 $hz "hz" $xz "xz")
[*]    )
[*]    ((= str (strcase "ansi_950")) ;繁体版
[*]      (setq $Lgver 2 $hz "fan" $xz "fank")
[*]    )
[*]    ((and (/= str (strcase "ansi_936")) (/= str (strcase "ansi_950")));;英文或其他版
[*]      (setq $Lgver 3 $hz "hz" $xz "xz")
[*]    )
[*])
[*])
[*];;简体、繁体、英文提示---(一级)-----
[*];;msg1 简体字 nilmsg2 繁体字 nil msg3 英文 nil--
[*](defun slmsg (msg1 msg2 msg3 / msg)
[*](cond
[*]    ((= $Lgver 1)
[*]      (setq msg msg1)
[*]    )
[*]    ((= $Lgver 2) ;繁体版
[*]      (setq msg msg2)
[*]    )
[*]    ((= $Lgver 3)
[*]      (setq msg msg3)
[*]    )
[*])
[*]msg ;;输出信息
[*])
对不起各位,必须收一币,如果你觉得源码都不是我提供,不值,请你不要下载!!



三领设计V3.O 永久更新地址

链接:https://pan.baidu.com/s/1BZHwWKiJdDK6NulZZV87Xw
提取码:uan9

尘缘一生 发表于 2022-12-22 17:57:44

timmy521 发表于 2022-12-22 17:42
少一个函数 DCL2LISP


[*];; DCL写进LISP函数------(一级)----------
[*](defun dcl2lisp (lst_str / str f)
[*](setq &file (getfilen ".dcl") f (open &file "w"))
[*](foreach str lst_str
[*]    (princ "\n" f)
[*]    (princ str f)
[*])
[*](close f)
[*]&file ;;返回
[*])
[*];;卸载DCL,删除临时DCL文件-----(一级)---------
[*](defun slunloaddcl (id /)
[*](unload_dialog id)
[*](sl:del-fil &file)
[*](gc)
[*])
[*];;取得临时文件名-----(一级)----------
[*];;exn 扩展名   ".dcl" ".dwg" nil 返回不带扩展名 路径 "D:\\temp\123"
[*];;用法 (getfilen ".dcl") (getfilen nil)
[*](defun getfilen (exn)
[*](setq &file (vl-filename-mktemp "" "" exn))
[*]&file
[*])

[*];删除文件--------(一级)------
[*];(sl:del-fil "D:\\简历.docx")
[*](defun sl:del-fil (file / fso oFile att ent ss)
[*](vl-catch-all-apply
[*]    (function
[*]      (lambda ()
[*]      (if (= (vl-file-delete file) nil)
[*]          (progn
[*]            (setq fso (vlax-create-object "Scripting.FilesystemObject"))
[*]            (setq oFile (vlax-invoke fso 'GetFile File));易报错(发生意外),原因尚不清楚
[*]            (setq att (logand 1 (vlax-get-property oFile 'Attributes)))
[*]            (if (/= att 0) (vlax-put-property oFile 'Attributes 0))
[*]            (setq fildir (vl-filename-directory file))
[*]            (setq ss (vl-directory-files fildir (strcat (vl-filename-base file) (vl-filename-extension file)) 0))
[*]            (foreach ent ss
[*]            (vlax-invoke fso "deletefile" (strcat fildir "\\" ent) :vlax-false)
[*]            )
[*]            (vlax-release-object oFile)
[*]            (vlax-release-object fso)
[*]          )
[*]      )
[*]      )
[*]    )
[*])
[*])

zm880928 发表于 2022-12-14 08:18:45

所以你自己都觉得你提供是不是源码,你提供的是思路,概念。

tianbeiyuan 发表于 2022-12-14 08:06:57

为什么下载不了。。:'(

nsh935 发表于 2022-12-14 08:45:02

权限太高 看不了谢谢

hkhbs 发表于 2022-12-14 08:55:08

权限设置太高

timmy521 发表于 2022-12-14 16:07:00

设置东西了,不想给别人下载

LYC688 发表于 2022-12-14 17:59:05

444444444444

magicheno 发表于 2022-12-14 20:45:45

感谢大佬分享~

AndyWang 发表于 2022-12-15 09:49:06

一直觉得兄台的语言是最有魅力的

Hanspengyang 发表于 2022-12-17 16:19:21

买了,希望继续更新,尤其对新版本cad支持哈.
页: [1] 2 3
查看完整版本: 再发一遍图库代码(源码)