如何调用cad系统的打开文件对话框?
如何调用cad系统的打开文件对话框?可以同时选择多个文件。 <A href="http://discussion.autodesk.com/thread.jspa?messageID=381741" target="_blank" >http://discussion.autodesk.com/thread.jspa?messageID=381741</A> 没找到答案,望高人指点 <p>在vba菜单中,工程->组件 中加入microsoft common dialog,你再查查microsoft common dialog的用法.</p> yadg0发表于2007-8-6 9:14:00static/image/common/back.gif在vba菜单中,工程->组件 中加入microsoft common dialog,你再查查microsoft common dialog的用法.<p>This control is not licensed for all computers</p> <p>也可以使用API,在CAD VBA二次开发中写的非常详细.</p> 问题是,我的VBA中根本没有“工程”这个菜单项啊? 将filedia值设置为1。 <p>新建一个用户窗体,在该窗体上添加一个按键控件,一个列表控件,一个通用对话框控件.然后添加如下代码,即可实现多文件选取,并将选取的文件的文件名添加到列表控件中:</p>
<p><font face="Verdana">Private Sub cmd_添加_Click()<br/> Dim I As Integer<br/> Dim Y As Integer<br/> Dim Z As Integer<br/> Dim FileNames() As String<br/> <br/> On Error GoTo errHandle<br/> With comDlg<br/> .CancelError = True<br/> .MaxFileSize = 32767<br/> '&H4 隐藏只读复选框<br/> '&H200 允许多重选择<br/> '&H8000 不能具有只读属性,也不能在写保护目录下面<br/> '&H80000 类似资源管理器的打开<br/> '&H100000 不要间接引用外壳链接(也称作快捷方式)<br/> .flags = &H4 Or &H200 Or &H8000 Or &H80000 Or &H100000<br/> .DialogTitle = "选择图形文件"<br/> .Filter = "图形文件(*.dwg)|*.dwg|所有文件(*.*)|*.*"<br/> .fileName = ""<br/> .ShowOpen<br/> End With<br/> comDlg.fileName = comDlg.fileName & Chr(0) '这些文件名是用空字符Chr(0)分隔符,而不是空格分隔符隔开<br/> <br/> Z = 1<br/> For I = 1 To Len(comDlg.fileName)<br/> 'InStr函数,返回 Variant (Long),指定一字符串在另一字符串中最先出现的位置。<br/> '语法 InStr(起点位置, string1, string2)<br/> I = InStr(Z, comDlg.fileName, Chr(0))<br/> If I = 0 Then Exit For<br/> ReDim Preserve FileNames(Y)<br/> 'Mid函数,返回 Variant (String),其中包含字符串中指定数量的字符。语法 Mid(string, start[, length])<br/> FileNames(Y) = Mid(comDlg.fileName, Z, I - Z)<br/> Z = I + 1<br/> Y = Y + 1<br/> Next I</font></p>
<p><font face="Verdana"> '向列表框中添加对象<br/> Dim count As Integer<br/> count = Lst_文件表.ListCount<br/> If Y = 1 Then<br/> Lst_文件表.AddItem FileNames(Y - 1), count<br/> Else<br/> For I = 1 To Y - 1<br/> FileNames(I) = FileNames(0) & "\" & FileNames(I)<br/> Lst_文件表.AddItem FileNames(I), I - 1 + count<br/> Next I<br/> End If</font></p>
<p><font face="Verdana">errHandle:<br/>End Sub</font></p>
页:
[1]