您當(dāng)前的位置:主頁(yè)>>AutoCAD>>AutoCAD二次開發(fā)  
           使用VBA創(chuàng)建應(yīng)用程序

     實(shí)例:最簡(jiǎn)單的VBA程序—“Hello.dvb”
    Step1創(chuàng)建新文件
運(yùn)行AutoCAD2002系統(tǒng),以“acadiso.dwt”為樣板創(chuàng)建圖形文件,并調(diào)用“vbaide”命令進(jìn)入VBA環(huán)境;
    Step2創(chuàng)建窗體
(1)選擇菜單【Insert(插入)】→【UserForm(用戶窗體)】,編輯器將創(chuàng)建一個(gè)新的窗體,并顯示在窗體窗口中。選擇該窗體,然后在屬性窗口中將“Caption”項(xiàng)改為“DrawText”。
(2)在控件工具箱中單擊按鈕,并在窗體的適當(dāng)位置拖動(dòng)鼠標(biāo),創(chuàng)建一個(gè)編輯框控件。
(3)在控件工具箱中單擊按鈕,并在窗體的適當(dāng)位置拖動(dòng)鼠標(biāo),創(chuàng)建一個(gè)按鈕控件。選擇該控件后,在屬性窗口中將“Caption”項(xiàng)改為“Click”。
創(chuàng)建結(jié)果參見(jiàn)圖37-6。


    Step3編寫代碼
(1)在窗體窗口中雙擊按鈕控件,編輯器顯示代碼窗口,并提示用戶輸入代碼,如圖37-7所示。代碼清單如下:
PrivateSubCommandButton1_Click()
DimTextObjAsAcadText'定義文字對(duì)象變量
DimTextStringAsString'定義字符串變量
DimInsPnt(0To2)AsDouble'定義文字插入點(diǎn)數(shù)組變量
DimHeightAsDouble'定義文字高度變量
TextString=TextBox1.Text'字符串取值為編輯框中輸入的文字
'指定文字插入點(diǎn)位置和文字高度
InsPnt(0)=100:InsPnt(1)=100:InsPnt(2)=0
Height=15
'在模型空間創(chuàng)建文字對(duì)象
SetTextObj=ThisDrawing.ModelSpace.AddText(TextString,InsPnt,Height)
TextObj.Color=acGreen'指定文字對(duì)象的顏色為綠色
ZoomAll'縮放視圖
UnloadMe'關(guān)閉窗體
EndSub

(2)單擊“Standard(標(biāo)準(zhǔn))”工具欄中的按鈕,以“Hello.dvb”為名保存該文件。
Step4運(yùn)行VBA程序
(1)單擊“Standard(標(biāo)準(zhǔn))”工具欄中的按鈕運(yùn)行該程序,系統(tǒng)將切換到AutoCAD窗口,并顯示如圖37-8所示的對(duì)話框。用戶可在該對(duì)話框的編輯框中輸入“Hello,VBA!”,并單擊按鈕,則將在當(dāng)前圖形中創(chuàng)建文字對(duì)象,結(jié)果如圖37-9所示。

   實(shí)例說(shuō)明
  如果用戶退出VBA環(huán)境并返回AutoCAD系統(tǒng)窗口,則需要對(duì)該程序進(jìn)行加載后才能運(yùn)行。加載VBA程序的方式有如下幾種:
1.選擇菜單【Tools(工具)】→【LoadAppcation…(加載應(yīng)用程序)】,彈出“Load/UnloadApplications(加載/卸載應(yīng)用程序)”對(duì)話框。利用該對(duì)話框進(jìn)行加載的過(guò)程與加載LISP程序相同。
2.選擇菜單【Tools(工具)】→【Macro(宏)】→【LoadProject…(加載工程)】,彈出“OpenVBAProject(打開VBA工程)”對(duì)話框,用戶可選擇“Hello.dvb”文件并單擊Open按鈕進(jìn)行加載。
3.選擇菜單【Tools(工具)】→【Macro(宏)】→【VBAManager…(VBA管理器)】,彈出“VBAManager(VBA管理器)”對(duì)話框,如圖37-10所示。

   該對(duì)話框中的“Drawing(圖形)”下拉列表中顯示了加載的所有圖形文件。對(duì)于該列表中指定的圖形文件,“Projects(工程)”列表顯示了該文件中已加載的VBA程序,用戶可單擊按鈕載入其他的VBA程序。

   小結(jié)
   本章主要介紹了AutoCADActiveX和VBA的概念和作用,并通過(guò)一個(gè)簡(jiǎn)單的實(shí)例講述了在AutoCAD系統(tǒng)中開發(fā)VBA程序的過(guò)程。
民眾工作室.制作      版權(quán)所有