SolidWorks專門論壇 SolidWorks forum

 找回密碼
 註冊
查看: 9998|回復: 5

如何製作開啟檔案

[複製鏈接]
發表於 2021/4/4 18:59:35 | 顯示全部樓層 |閱讀模式
如何製作開啟零件(或是模型)的API,我試過巨集不行,目前只能用CTRL+TAB,循環開啟檔案,不過這僅是用2個檔案,多個檔案的循環開啟就不過明確。
Sub main()
Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID2("工程視圖1", "DRAWINGVIEW", 0.122147160320594, 8.99799957121084E-02, 0, False, 0, Nothing, 0)
Part.OpenCompFile

本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有賬號?註冊

x
發表於 2021/4/5 12:42:35 | 顯示全部樓層
看apihelp可以发现 OpenCompFile 只针对装配体,所以在工程图中你用它达不到目的,
然后你就得用其他的代码来实现了。。。

點評

謝謝提點  發表於 2021/4/5 19:58
發表於 2021/4/16 16:42:42 | 顯示全部樓層
這個是Solidworks用來開檔案的API(看起來參數很多有點複雜)
OpenDoc6 Method (ISldWorks)

我們用舊一點的指令只剩下檔案路徑與檔案類型兩個參數
OpenDoc Method (ISldWorks)

可以看到其中有一項參數“Type“需給定檔案類型列舉常數
swDocumentTypes_e

瀏覽參數定義會發現依圖檔類型需給定不同的常數才能正常運行指令
如果想要達成隨機開幾不同類型的檔案至少要完成以下幾件事
1.取得路徑字串最後6個字元(副檔名)
2.用副檔名字串指向對應列舉常數
3.將對應列舉常數回傳至API調用指令

我建立的一個變數"DocumentType"來保留判斷後的結果
然後將路徑字串放入"Path"便入使用Right指令取得最後6個字元(副檔名)
然後在用Select Case判別式確認文件類型


完成以上這些事才能正常使用API,以圖中的變數來呼叫指令可以寫成下列形式
Dim SwDoc as ModelDoc = OpenDoc(Path,DoucmentType)



本帖子中包含更多資源

您需要 登錄 才可以下載或查看,沒有賬號?註冊

x
 樓主| 發表於 2021/4/16 19:44:16 | 顯示全部樓層
jbkndron 發表於 2021/4/16 16:42
這個是Solidworks用來開檔案的API(看起來參數很多有點複雜)
OpenDoc6 Method (ISldWorks)

這已經超越我的理解~謝了,你有幫人寫API嗎?

點評

我是寫好玩的  詳情 回復 發表於 2021/4/16 22:00
發表於 2021/4/16 22:00:35 | 顯示全部樓層

武大郎 發表於 2021/4/16 19:44
這已經超越我的理解~謝了,你有幫人寫API嗎?
我是寫興趣的,你遇到了什麼重複化的動作嗎?看起來開檔案只是第一步吧?
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

論壇統計|手機版上論壇|論壇來自幾何科技 論壇架構版次 20240312

GMT+8, 2024/4/20 04:13 , Processed in 0.123560 second(s), 17 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

快速回復 返回頂部 返回列表