wlzhzj 发表于 2011-6-13 15:01:31

求助:vb.net设置当前的活动文档为新打开的Dwg文件

Dim docs As DocumentCollection = Application.DocumentManager
Dim MyDir = "C:\新建文件夹"
Dim MyFilter = "*.dwg"
For Each MyFile In System.IO.Directory.GetFiles(MyDir, MyFilter)
Dim filename As String = MyFile
Dim doc As Document = docs.Open(filename, True)
'设置当前的活动文档为新打开的Dwg文件()
docs.MdiActiveDocument = doc'运行到这里就停了不能运行下面的语句请指教

                  ' 关闭活动文档
doc.CloseAndDiscard()
Next

luzhmu 发表于 2011-6-18 23:19:18

我也是不能执行,同问

enocheasty 发表于 2011-6-19 01:02:08

你一定要把新打开的文档置为当前吗?如果不置为当前就没问题。。其实你要是做什么批量操作,也没必要置为当前啊。
你是编译的dll加载的吗?如果是这样的话,我理解,你加载的那个dll运行的时候就是在当前文档的范围下,当你把当前文档置为其他文档的时候,那个以后的语句就好像被挂起了一样,我也不知道是被终止了还是被挂起。CAD报的错是“图形忙”!
要不你就用windows窗体应用程序来做。

luzhmu 发表于 2011-6-19 12:56:39









<CommandMethod("OpenDwg")> _

Public Sub OpenDwg()
      Dim ed As Editor = Application.DocumentManager.MdiActiveDocument.Editor
      '获取文档管理器对象以打开Dwg文件
      Dim docs As DocumentCollection = Application.DocumentManager

      Dim filename As String

      filename = My.Application.Info.DirectoryPath & "\tsf.dwg"
      '打开所选择的Dwg文件
      Dim doc As Document = docs.Open(filename, True)
      '设置当前的活动文档为新打开的Dwg文件
      Application.DocumentManager.MdiActiveDocument = doc
    End Sub
我在form中调用opendwg()时提示执行环境效,(已经导入相同的COM了),但是执行命令:opendwg又可以打开文件,这个是什么原因呢,又如何解决呢?
页: [1]
查看完整版本: 求助:vb.net设置当前的活动文档为新打开的Dwg文件