1、如何在 VB 中連接 AutoCAD。
啟動 VB ,引用 AutoCAD 類型庫。操作步驟:從“工程”菜單中選擇“引用”選項(xiàng),啟動“引用”對話框。在“引用”對話框中,選擇 AutoCAD 類型庫,然后單擊“確定”。
定義模塊級變量 AutoCAD 應(yīng)用程序 (acadApp) 和當(dāng)前的文檔 (acadDoc)。
如果 AutoCAD 正在運(yùn)行,使用 GetObject 函數(shù)將檢索 AutoCAD Application 對象。如果 AutoCAD 沒有運(yùn)行,使用 CreateObject 函數(shù)試圖創(chuàng)建一個 AutoCAD Application 對象。如果創(chuàng)建成功,會啟動 AutoCAD;如果失敗,則會發(fā)生錯誤。
同時(shí)運(yùn)行多個 AutoCAD 任務(wù)時(shí),GetObject 函數(shù)會返回 Windows 運(yùn)行對象表中的第一個 AutoCAD 實(shí)例。
要顯示 AutoCAD 圖形窗口,需要將 AutoCAD 應(yīng)用程序的 Visible 特性設(shè)置為 TRUE。
使用 acadDoc 變量引用當(dāng)前的 AutoCAD 圖形。
示例:
Dim acadApp As AcadApplication
Dim acadDoc as AcadDocument
Sub ConnectToAcad()
On Error Resume Next
Set acadApp = GetObject(, "AutoCAD.Application")
If Err Then
Err.Clear
Set acadApp = CreateObject("AutoCAD.Application")
If Err Then End
End If
acadApp.Visible = True
Set acadDoc = acadApp.ActiveDocument
End Sub
2、如何使 VB 開發(fā)的程序不依賴于 AutoCAD 的版本。
啟動 VB ,定義模塊級變量 AutoCAD 應(yīng)用程序 (acadApp) 和當(dāng)前的文檔 (acadDoc)。
如果 AutoCAD 正在運(yùn)行,使用 GetObject 函數(shù)將檢索 AutoCAD Application 對象。如果 AutoCAD 沒有運(yùn)行,使用 CreateObject 函數(shù)試圖創(chuàng)建一個 AutoCAD Application 對象。如果創(chuàng)建成功,會啟動 AutoCAD;如果失敗,則會發(fā)生錯誤。
同時(shí)運(yùn)行多個 AutoCAD 任務(wù)時(shí),GetObject 函數(shù)會返回 Windows 運(yùn)行對象表中的第一個 AutoCAD 實(shí)例。
要顯示 AutoCAD 圖形窗口,需要將 AutoCAD 應(yīng)用程序的 Visible 特性設(shè)置為 TRUE。
使用 acadDoc 變量引用當(dāng)前的 AutoCAD 圖形。
示例:
Dim acadApp As Object
Dim acadDoc as Object
Sub ConnectToAcad()
On Error Resume Next
Set acadApp = GetObject(, "AutoCAD.Application")
If Err Then
Err.Clear
Set acadApp = CreateObject("AutoCAD.Application")
If Err Then End
End If
acadApp.Visible = True
Set acadDoc = acadApp.ActiveDocument
End Sub
與第一個問題相比較,可以看出,不引用具體的類型庫以及使用通用的對象類型就可以達(dá)到通用性。
3、前期綁定和后期綁定
要創(chuàng)建一個使用前期綁定方式的對象變量,也就是說,在程序編譯時(shí)就完成綁定,則對象變量在聲明時(shí)應(yīng)指定類 ID,如:Dim acadApp As AcadApplication。
使用 As Object 子句聲明對象變量,可以創(chuàng)建一個能包含任何類型對象引用的變量。不過,該變量訪問對象是后期綁定的,也就是說,綁定在程序運(yùn)行時(shí)才進(jìn)行,如:Dim acadApp As Object。
前期綁定的變量引用可以提供更好的性能,但該變量只能存放聲明中所指定的類的引用。
而后期綁定的變量引用可以提供更好的通用性。
4、依賴于版本和獨(dú)立于版本
如果 CreateObject 或 GetObject 函數(shù)使用的 ProgID 沒有附加版本號,那么是獨(dú)立于版本的,否則是依賴于版本的。例如,如果使用的是 CreateObject,則 CreateObject ("AutoCAD.Application") 是獨(dú)立于版本的,而 CreateObject ("AutoCAD.Application.15") 是依賴于版本的。
5、VB 代碼到 VBA 代碼的轉(zhuǎn)換
在 VBA 的 IDE 環(huán)境中,使用“導(dǎo)入文件”將要轉(zhuǎn)換的 VB 工程的模塊、類模塊以及窗體文件一一導(dǎo)入。接著將 VB 代碼中所有的當(dāng)前的文檔 (acadDoc) 變量替換為 ThisDrawing,而AutoCAD 應(yīng)用程序 (acadApp) 變量替換為 Application。同時(shí)刪除定義的 AutoCAD 應(yīng)用程序 (acadApp) 和當(dāng)前的文檔 (acadDoc) 變量,刪除與 AutoCAD 應(yīng)用程序連接的代碼。注意:要轉(zhuǎn)換 VB 代碼的窗體部分,則窗體必須是用 UserForm 創(chuàng)建的。
6、圖形對象和非圖形對象
圖形對象(也稱為圖元、實(shí)體對象)是組成圖形的可見對象(例如直線、圓、光柵圖像等)。非圖形對象是指屬于圖形的一部分但不可見的(提示性的)對象,例如 Layers、 Linetypes、 DimStyles、 SelectionSets 等等。要創(chuàng)建這些對象,可使用 Add 方法。每一個對象都有用于特定目的的方法和特性,都有設(shè)置和檢索擴(kuò)展數(shù)據(jù)以及刪除自己的方法。#p#分頁標(biāo)題#e#
啟動 VB ,引用 AutoCAD 類型庫。操作步驟:從“工程”菜單中選擇“引用”選項(xiàng),啟動“引用”對話框。在“引用”對話框中,選擇 AutoCAD 類型庫,然后單擊“確定”。
定義模塊級變量 AutoCAD 應(yīng)用程序 (acadApp) 和當(dāng)前的文檔 (acadDoc)。
如果 AutoCAD 正在運(yùn)行,使用 GetObject 函數(shù)將檢索 AutoCAD Application 對象。如果 AutoCAD 沒有運(yùn)行,使用 CreateObject 函數(shù)試圖創(chuàng)建一個 AutoCAD Application 對象。如果創(chuàng)建成功,會啟動 AutoCAD;如果失敗,則會發(fā)生錯誤。
同時(shí)運(yùn)行多個 AutoCAD 任務(wù)時(shí),GetObject 函數(shù)會返回 Windows 運(yùn)行對象表中的第一個 AutoCAD 實(shí)例。
要顯示 AutoCAD 圖形窗口,需要將 AutoCAD 應(yīng)用程序的 Visible 特性設(shè)置為 TRUE。
使用 acadDoc 變量引用當(dāng)前的 AutoCAD 圖形。
示例:
Dim acadApp As AcadApplication
Dim acadDoc as AcadDocument
Sub ConnectToAcad()
On Error Resume Next
Set acadApp = GetObject(, "AutoCAD.Application")
If Err Then
Err.Clear
Set acadApp = CreateObject("AutoCAD.Application")
If Err Then End
End If
acadApp.Visible = True
Set acadDoc = acadApp.ActiveDocument
End Sub
2、如何使 VB 開發(fā)的程序不依賴于 AutoCAD 的版本。
啟動 VB ,定義模塊級變量 AutoCAD 應(yīng)用程序 (acadApp) 和當(dāng)前的文檔 (acadDoc)。
如果 AutoCAD 正在運(yùn)行,使用 GetObject 函數(shù)將檢索 AutoCAD Application 對象。如果 AutoCAD 沒有運(yùn)行,使用 CreateObject 函數(shù)試圖創(chuàng)建一個 AutoCAD Application 對象。如果創(chuàng)建成功,會啟動 AutoCAD;如果失敗,則會發(fā)生錯誤。
同時(shí)運(yùn)行多個 AutoCAD 任務(wù)時(shí),GetObject 函數(shù)會返回 Windows 運(yùn)行對象表中的第一個 AutoCAD 實(shí)例。
要顯示 AutoCAD 圖形窗口,需要將 AutoCAD 應(yīng)用程序的 Visible 特性設(shè)置為 TRUE。
使用 acadDoc 變量引用當(dāng)前的 AutoCAD 圖形。
示例:
Dim acadApp As Object
Dim acadDoc as Object
Sub ConnectToAcad()
On Error Resume Next
Set acadApp = GetObject(, "AutoCAD.Application")
If Err Then
Err.Clear
Set acadApp = CreateObject("AutoCAD.Application")
If Err Then End
End If
acadApp.Visible = True
Set acadDoc = acadApp.ActiveDocument
End Sub
與第一個問題相比較,可以看出,不引用具體的類型庫以及使用通用的對象類型就可以達(dá)到通用性。
3、前期綁定和后期綁定
要創(chuàng)建一個使用前期綁定方式的對象變量,也就是說,在程序編譯時(shí)就完成綁定,則對象變量在聲明時(shí)應(yīng)指定類 ID,如:Dim acadApp As AcadApplication。
使用 As Object 子句聲明對象變量,可以創(chuàng)建一個能包含任何類型對象引用的變量。不過,該變量訪問對象是后期綁定的,也就是說,綁定在程序運(yùn)行時(shí)才進(jìn)行,如:Dim acadApp As Object。
前期綁定的變量引用可以提供更好的性能,但該變量只能存放聲明中所指定的類的引用。
而后期綁定的變量引用可以提供更好的通用性。
4、依賴于版本和獨(dú)立于版本
如果 CreateObject 或 GetObject 函數(shù)使用的 ProgID 沒有附加版本號,那么是獨(dú)立于版本的,否則是依賴于版本的。例如,如果使用的是 CreateObject,則 CreateObject ("AutoCAD.Application") 是獨(dú)立于版本的,而 CreateObject ("AutoCAD.Application.15") 是依賴于版本的。
5、VB 代碼到 VBA 代碼的轉(zhuǎn)換
在 VBA 的 IDE 環(huán)境中,使用“導(dǎo)入文件”將要轉(zhuǎn)換的 VB 工程的模塊、類模塊以及窗體文件一一導(dǎo)入。接著將 VB 代碼中所有的當(dāng)前的文檔 (acadDoc) 變量替換為 ThisDrawing,而AutoCAD 應(yīng)用程序 (acadApp) 變量替換為 Application。同時(shí)刪除定義的 AutoCAD 應(yīng)用程序 (acadApp) 和當(dāng)前的文檔 (acadDoc) 變量,刪除與 AutoCAD 應(yīng)用程序連接的代碼。注意:要轉(zhuǎn)換 VB 代碼的窗體部分,則窗體必須是用 UserForm 創(chuàng)建的。
6、圖形對象和非圖形對象
圖形對象(也稱為圖元、實(shí)體對象)是組成圖形的可見對象(例如直線、圓、光柵圖像等)。非圖形對象是指屬于圖形的一部分但不可見的(提示性的)對象,例如 Layers、 Linetypes、 DimStyles、 SelectionSets 等等。要創(chuàng)建這些對象,可使用 Add 方法。每一個對象都有用于特定目的的方法和特性,都有設(shè)置和檢索擴(kuò)展數(shù)據(jù)以及刪除自己的方法。#p#分頁標(biāo)題#e#
相關(guān)文章
- 2021-09-08BIM技術(shù)叢書Revit軟件應(yīng)用系列Autodesk Revit族詳解 [
- 2021-09-08全國專業(yè)技術(shù)人員計(jì)算機(jī)應(yīng)用能力考試用書 AutoCAD2004
- 2021-09-08EXCEL在工作中的應(yīng)用 制表、數(shù)據(jù)處理及宏應(yīng)用PDF下載
- 2021-08-30從零開始AutoCAD 2014中文版機(jī)械制圖基礎(chǔ)培訓(xùn)教程 [李
- 2021-08-30從零開始AutoCAD 2014中文版建筑制圖基礎(chǔ)培訓(xùn)教程 [朱
- 2021-08-30電氣CAD實(shí)例教程AutoCAD 2010中文版 [左昉 等編著] 20
- 2021-08-30高等院校藝術(shù)設(shè)計(jì)案例教程中文版AutoCAD 建筑設(shè)計(jì)案例
- 2021-08-29環(huán)境藝術(shù)制圖AutoCAD [徐幼光 編著] 2013年P(guān)DF下載
- 2021-08-29機(jī)械A(chǔ)utoCAD 項(xiàng)目教程 第3版 [繆希偉 主編] 2012年P(guān)DF
- 2021-08-29機(jī)械制圖與AutoCAD [李志明 主編] 2014年P(guān)DF下載