找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 400|回复: 0

[转贴]:〖实用AutoCAD图形文件管理程序〗

[复制链接]
发表于 2003-10-17 00:29:23 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
〖实用AutoCAD图形文件管理程序〗



由于国家大力推广CAD的应用,越来越多的企事业单位运用CAD来进行绘图的工作,广大工程技术人员终于可以
摆脱绘图板和绘图笔的束缚。在CAD的天空里任意驰骋,发挥着他们横溢的才华。随着CAD绘图的不断深入,硬盘里
的CAD图形文件越积越多。要管理这些文件通常的做法是:运行AutoCAD,逐个文件打开,判断该文件是否还有用。
由于AutoCAD没有即时删除功能,必须手工记录没用文件的文件名,将硬盘中的图形文件都浏览过一遍后,退出Aut
oCAD,打开文件管理器,寻找刚才手工记录的图形文件,逐个删除。如此繁琐的管理方法,既容易出错又效率低下
,对于现今动辄就是上百兆的图形文件而言不啻于杯水车薪,使许多人无可奈何之下只能听之任之,于是越来越多
没有用的图形文件不断堆积,使本已十分宝贵的硬盘空间日渐缩小。难道就没有其它更简便的方法来对付它了吗?
有!笔者运用简单易学而又功能强劲的VB语言编写了下述程序,通过该程序就可以随时将过时或没用的垃圾图形文
件删除,既节省了宝贵的硬盘空间又提高了工作效率。

  下面首先介绍一下该程序的界面元素和使用方法。界面的上半部分类似Windows程序通用的打开文件对话框,
其使用方法也类似。通过对磁盘列表和目录列表的浏览可以遍历整个硬盘,当某个目录下存在CAD图形文件(后缀名
为.dwg)时,文件列表框便会将它们一一罗列出来。这时只需用鼠标单击文件列表框中的文件名,该文件的内容
便在界面下部的CAD—OLE窗口中显示出来,如果确认该文件是过时或没用的垃圾图形文件,只需单击界面右上部的D
elete按钮,该文件便立即从硬盘上“消失”(当然如果误删的话,Win95用户可以从“垃圾桶”里将它拣回来;Wi
n3.X用户可以马上运行Undelete程序恢复该文件)。

  介绍该程序的清单:

  DimselectedfileAsString

  PrivateSubbtnexit—Click();Exit按钮name属性是btnexit

  clear;调用Clear子程序清空CAD—OLE内容

  UnloadForm1

  End

  EndSub

  PrivateSubbtndelete—Click();Delete按钮name
属性为

  ;btndelete

  deletefile;调用deletefile子程序删除图形文件

  EndSub

  PrivateSubDrive1—Change();磁盘列表框name属
性为

  ;Drive1

  DirLPath-Drive1.Drive

  EndSub

  PrivateSubDir1Change();目录列表框name属性为
Dirl

  FilePathΚDir1.Path

  EndSub

  PrivateSubFile1—Click();文件列表框name属性
为file1

  getfilename;调用getfilename子程序得到文件全名


  showfile;调用showfile子程序显示图形文件

  EndSub

  PrivateSubgetfilename()

  IfFile1.ListIndexΛΚ0Then

  selectedfileΚFile1.Path

  IfRight$(selectedfile,1)ΙΛ″ι″Then

  selectedfileΚselectedfile+″ι″

  EndIf

  selectedfileΚselectedfile+File1.List(File1
.ListIndex)

  EndIf

  EndSub

  PrivateSubshowfile();通过OLE将图形文件全名
送往后

  ;台中运

  OLE1.SourceDocselectedfile;行的AutoCADforWIn
dows,

  ;CAD打开

  OLE1.ActionΚole1—activate;文件后,再通过OL
E将图形

  ;回送

  EndSub;CADOLE控件窗口加以显示

  PrivateSubdeletefile()

  Killselectedfile;删除图形文件

  currentfileΚFile1.ListIndex-1;文件指针上移
一位

  File1.Refresh;更新文件列表框

  IfFile1.ListCountΚ0Then;如果原来目录下只有
一个图形

  clear;文件,由于没用后继文件可以

  ExitSub;显示,清空CAD—OLE内容

  EndIf

  IfcurrentfileΛΚ0Then

  File1.ListIndexΚcurrentfile

  Else;如果删除的图形文件位于文件

  File1.ListIndexΚ0;列表框首位,将文件指针指


  EndIf;下一个文件

  EndSub

  PrivateSubclear()

  OLE1.SourceDocΚ″d:ιacadιsupportιacad.d
wg″

  OLE1.ActionΚole1—activate;清空CAD—OLE的方
法是让

  ;它显示

  OLE1.ActionΚolel1—close;空白文件,引号中内
容因人而异

  EndSub;关闭OLE连接,以节约内存占用

  上述程序在编制及运行时的注意事项:

  1.Windows环境下要安装有AutoCADforWindows;

  2.运行本程序前要先运行AutoCAD,并缩小成图标在后台运行以免阻挡程序界面,妨碍对图形的观看;

  3.文件列表框的pattern属性应设置为*.dwg,以使列表框仅显示CAD图形文件的文件名;

  4.界面下半部的显示窗口—OLE控件的Class属性应设置为AutoCAD;

  5.OLE控件的Sizemode属性应设置为3-Zoom,以使AutoCAD图形自动充满OLE控件框;

  6.在设计界面时,拉出OLE控件VB会自动弹出insertobject对话框为了避免出现不可预见的错误,这时先别忙
于从中选择AutoCAD对象,应选择Cancle退出。而在OLE控件的Class属性下拉菜单中选择AutoCAD对象。

  看到这里,细心的读者也许发现只要改变OLE控件的Class属性,就可以用本程序编译成类似功能的其它文件管
理程序。例如:将Class属性设置成Photoshop或CorelDRAW,便可利用它们强大的文件转换功能,显示和管理几十种图形文件。其它如WORD、EXCEL、轻松表格等等总之凡是支持OLE功能的应用程序所创建的文件都能用本程序稍加变动后加以显示和管理。希望广大读者能从中得到启发和享受VB轻松编程的乐趣!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-22 18:16 , Processed in 0.285675 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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