SolidWorks液壓閥塊特征設計(四)
2013-07-25 by:廣州Solidworks培訓中心 來源:仿真在線
SolidWorks液壓閥塊特征設計(四)
3.5 SolidWorks系統(tǒng)插件菜單的開發(fā)
3.5.1插件菜單功能
SolidWorks本身自帶有程序編輯器VBA,通過宏錄制可以實現(xiàn)SolidWorks的驅(qū)動,應用程序在SolidWorks環(huán)境下直接執(zhí)行,編程時不需要考慮SolidWorks的庫文件,而直接調(diào)用SolidWorksAPI所有函數(shù)及對象,隨時編輯應用程序,環(huán)境支持如單步調(diào)試、逐過程調(diào)試等多種調(diào)試手段,調(diào)試的同時可進行修改。但VBA的功能較弱,所提供的控件數(shù)目較少,對象的屬性、事件以及方法等不完全,用VBA二次開發(fā)SolidWorks將頗周折,所以論文研究中,選用DLL動態(tài)連接庫技術(shù)從外部操作SolidWorks DLL動態(tài)鏈接庫(DynamicL Link Librabry)是運行時連接的可執(zhí)行代碼和數(shù)據(jù)模塊,用它能節(jié)省內(nèi)存、方便地進行應用程序中的參數(shù)傳遞和通信、實現(xiàn)代碼共享、升級方便、且獨立于編程語言。
本系統(tǒng)是以插件的形式集成到Solidworks主菜單當中去的,即整個系統(tǒng)是在SolidWorks基礎上建立起來的,目的就是利用SolidWorks己有的強大功能實現(xiàn)特定的功能要求。與所有其它菜單條一樣,系統(tǒng)以Windows風格的菜單形勢插入到SolidWorks當中去。
加入SolidWorks可以有兩種形式,一種是臨時加入的方法,即調(diào)入*dll文件法,這種方法是將系統(tǒng)編譯生成動態(tài)連接文件(*d11)的臨時插入到SolidWorks當中去,當SolidWorks關閉時它也就隨之釋放出內(nèi)存,因此當再次啟動SolidWorks時插件并不存在于菜單中;另一種形式是通過修改注冊表的形式將系統(tǒng)插到SolidWorks菜單。SolidWorks允許用戶建立獨立的可執(zhí)行文件(EXE)、應用型動態(tài)鏈接庫文件(UserDLL)及擴展型動態(tài)鏈接庫文件(Extension DLL)。DLL是基于windows程序設計的一個非常重要的組成部分。在建立應用程序的可執(zhí)行文件時,不必將DLL鏈接到程序中,而是在運行時動態(tài)裝載DLL,裝載時DLL被映射到進程的地址空間中。在每次運行SolidWbrks時,DLL文件自動裝載,操作方便。
SolidWorks的SolidWorks對象,為VB對SolidWorks工作環(huán)境進行訪問處理提供了接口。通過此對象可以對SolidWorks工作環(huán)境添加菜單、刪除菜單、添加工具條、打開文件、新建文件、退出SolidWorks系統(tǒng)等功能,這里主要是通過使用SolidWorks對象的Add lnenu和Add menuitem方法來在SolidWorks工作環(huán)境中添加菜單和下拉子菜單及功能模塊的調(diào)用;通過使用SldWorks對象的Addtoolbar和AddToolbarCommand方法來完成在SolidWorks工作環(huán)境中添加工具條和完成對應標準件功能模塊的調(diào)用。
3.5.2實現(xiàn)方法
本次的DLL與EXE程序功能上基本沒有區(qū)別,但是DLL與EXE確實有實質(zhì)上的區(qū)別。DLL,作用在于為應用程序提供擴展功能。應用程序想要調(diào)用DLL文件,需要跟其進行“動態(tài)鏈接”;從編程的角度,應用程序需要知道DLL文件導出的API函數(shù)方可調(diào)用。由此可見,DLL文件本身并不可以運行,需要應用程序調(diào)用。正因為DLL文件運行時必須插入到應用程序的內(nèi)存模塊當中,所以要運行DLL就必須要用SolidWorks來加載DLL。具體方法就是象打開文件一樣用SolidWorks“打開”DLL,只是在加載DLL時要選擇Add.Ins文件類型。
菜單的具體實現(xiàn)方法如下:在VB中新建ActiveDLL工程。
把標準EXE程序的窗體文件和其他模塊等添加到Active DLL工程,然后為工程添加一個類模塊,內(nèi)容如下:
為Active DLL程引用swpublished.tlb庫文件,即“SolidWorks exposedtype LibrariesForadd-inUse”(SolidWorks插件庫文件)、“SolidWorks2007typeLibraries”(SolidWorks庫文件)、SoildWorks Constant type Libraries(“SolidWorks常數(shù)庫文件”)。
最后,將Active DLL工程編譯為一個DLL文件,就可以使用本小節(jié)前面的方法,在SolidWorks中加載并運行了,同一個DLL文件只需要加載一次就可以了。需要卸載或是重新加載,可以在SolidWorks工具欄的插件里進行。
相關標簽搜索:SolidWorks液壓閥塊特征設計(四) SolidWorks有限元培訓 武漢插件開發(fā) SolidWorks培訓課程 SolidWorks設計教程 SolidWorks視頻教程 SolidWorks軟件下載 SolidWorks在建筑室內(nèi)設計工業(yè)設計的應用 SolidWorks基礎知識 SolidWorks代做 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓