求助!我想在vb里打开SolidWorks零件文件,请问该怎么做?

New_dashaDSG 2017-03-22 10:05:16
具体想法是设置一个按钮,然后弹出对话框。找到想要打开的文件,再打开它?感谢各位大神
...全文
6597 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
舉杯邀明月 2018-01-25
  • 打赏
  • 举报
回复
引用 4 楼 qq_41643732 的回复:
我用Delphi做的,但最后也只是启动了Solidworks程序,文件没有打开。有没有谁懂得,解释下? swapp:=GetOrCreateObject('SldWorks.Application'); //运用函数GetOrCreate创建或获取SolidWorks对象 swapp.Visible:=true; //使创建的Solidworks对象可见 part:=swapp.OpenDoc('E:\典型焊缝类型\T型单V.SLDPRT');
鄙视楼上挖坟………… 既然你都看到“启动了Solidworks程序”,那说明代码直至 swapp.Visible:=true;  都是“执行正常”的。 而“文件没有打开”,那只能是: part:=swapp.OpenDoc('E:\典型焊缝类型\T型单V.SLDPRT'); 这句的“执行结果”不符合预期。 有两方面的可能: 1. Solidworks的COM接口有问题(但可能性很小,这么个“大工程”,岂会这点小事都做不好!)。 2. 你传递给 OpenDoc( ) 函数的参数不对!   这是最大的可能,你应当查阅一下它的文档,这个函数应该怎样使用。   是不是还有别的参数因“被你省略”造成了“文档已经打开、但‘没展示出来’(比如默认‘后台打开’)”,于是你认为文档没打开……
qq_41643732 2018-01-25
  • 打赏
  • 举报
回复
我用Delphi做的,但最后也只是启动了Solidworks程序,文件没有打开。有没有谁懂得,解释下? swapp:=GetOrCreateObject('SldWorks.Application'); //运用函数GetOrCreate创建或获取SolidWorks对象 swapp.Visible:=true; //使创建的Solidworks对象可见 part:=swapp.OpenDoc('E:\典型焊缝类型\T型单V.SLDPRT');
New_dashaDSG 2017-03-26
  • 打赏
  • 举报
回复
谢谢谢谢谢谢
New_dashaDSG 2017-03-26
  • 打赏
  • 举报
回复
请问你知道后续代码是什么吗 Private Sub open_Click() CommonDialog2.CancelError = True ' 设置“CancelError”为 True On Error GoTo ErrHandler ' 设置标志 CommonDialog2.Flags = cdlOFNHideReadOnly ' 设置过滤器 CommonDialog2.Filter = "All Files (*.*)|*.*|Text Files" & "(*.txt)|*.txt|Batch Files (*.bat)|*.bat" ' 指定缺省的过滤器 CommonDialog2.FilterIndex = 2 ' 显示“打开”对话框 CommonDialog2.ShowOpen ' 显示选定文件的扩展名 Text2 = Mid(CommonDialog2.filename, InStr(CommonDialog2.filename, ".") + 1) Set swApp = CreateObject("SldWorks.Application") Set Part = swApp.ActiveDoc swApp.Visible (True) Set Part = swApp.OpenDoc(Text2, swDocPART) Exit Sub ErrHandler: ' 用户按了“取消”按钮 Exit Sub End Sub 我的代码是这样,但是只是打开了SolidWorks程序
x287634334 2017-03-23
  • 打赏
  • 举报
回复
如果只是弹出打开文件对话框,这个用common dialog box控件就行。 如果选择文件后,还要打开具体文件,就需要自行构造代码。

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧