Truy cp đn Object Hierarch yb ng VB, VBA trong các môi tr ng khác.

Một phần của tài liệu Giáo trình lập trình trong Autocad, GV Trần Anh Bình (Trang 28)

VII. Cn b nv VBA.

7. Truy cp đn Object Hierarch yb ng VB, VBA trong các môi tr ng khác.

Ta c ng có th truy c p đ n Object Hierarchy c a cad b ng các ngôn ng khác nh VB, VBA trong Excel, Word,…. Vi c đ u tiên ta ph i Tham chi u đ n AutoCAD Type Library. làm vi c này ta làm nh sau :

Ch n References option t Project menu, h p tho i Reference dialog hi n lên. Trong References dialog box, ch n Type library for AutoCAD, and then click OK.

Khái ni m v Type library for AutoCAD. Các đ i t ng, thu c tính và ph ng th c đ c đ a ra b i k thu t t đ ng hoá đ i t ng có ch a m t type library. M t type library là m t file ho c m t ph n c a file miêu t ki u c a m t ho c nhi u đ i t ng.Type libraries không ch a Object; chúng ch a các thông tin v Object. truy c p đ n type library, applications và browsers có th xác đ nh đ c đ c tr ng c a t ng object, nh là giao di n c a đ i t ng, tên và đa ch c a t ng thành ph n c a dao di n đó.Tr c khi b n s d ng, B n ph i tham chi u đ n type library. AutoCAD VBA s t tham chi u đ n AutoCAD type library. i các môi tr ng khác b n ph i t o tham chi u t i AutoCAD type library, acax16enu.tlb. File này m c đnh n m trong th m c C:\program files\common files\autodesk shared.

Tuy nhiên, s t t h n n u b n add type library reference vì nh ng u đi m sau : - Ch ng trình s chay nhanh h n, n đnh h n.

- Function, properties, methods có th đ c ki m tra khi b n đánh code. - Ch c n ng tìm ki m và th xu ng sau d u ch m c a các đ i t ng. Sub Ch2_ConnectToAcad()

Dim acadApp As AcadApplication On Error Resume Next

Set acadApp = GetObject(, "AutoCAD.Application.16") If Err Then

Err.Clear

Set acadApp = CreateObject("AutoCAD.Application.16") If Err Then B浦 MÔN T IN H窺C XÂY D衛NG KHOA CÔNG NGH烏 THÔN G TIN TR姶云NG A萎 I H窺C XÂY D衛NG

MsgBox Err.Description Exit Sub

End If End If

MsgBox "Now running " + acadApp.Name + " version " + acadApp.Version End Sub

Dim acadDoc As AcadDocument Set acadDoc = acadApp.ActiveDocument ………

acadApp.visible = True

N u AutoCad đang ch y – GetObject s không sinh ra l i. Ng c l i n u sinh ra l i, t c là CAD ch a ch y. Khi đó CreatObject s kh i đ ng CAD. N u có nhi u session c a CAD đang ch y thì ch ng trình s l y Session đ u tiên trong Windows Running Object Table.

B浦 MÔN T IN H窺C XÂY D衛NG KHOA CÔNG NGH烏 THÔN G TIN TR姶云NG A萎 I H窺C XÂY D衛NG

CH NG 2 : LÀM VI C V I MÔI TR NG AUTOCAD I. M , đóng và ghi l i b n v

Một phần của tài liệu Giáo trình lập trình trong Autocad, GV Trần Anh Bình (Trang 28)