Menugroup collection MenuGroups Collection

Một phần của tài liệu LẬP TRÌNH TRONG AUTOCAD (Trang 76 - 77)

VI. Làm v ic vi Group

1. Menugroup collection MenuGroups Collection

Tất cả các menu đ ợc load trong session hiện tai của AutoCAD đ ợc l u cất trong MenuGroup collection. Các menu này có thể đ ợc hiển thị hoặc không đ ợc hiển thị trên menu bar của Autocad. Ng ời dùng có thểđiều khiển sự hiển thị của các menu thông qua lệnh MenuLoad trong Autocad. Mỗi một menu MenuGroup object cung cấp tất cả các toolbar and pop-up menu có trong Group đó.

Loading Menu Groups

Ph ơng thức Load của MenuGroup collection dùng để tải một menu group đ ợc ch a trong các file ( .mnc, .mns, or .mnu ) vào Autocad. Cú pháp của lệnh này nh sau :

Set MenuGroupObject = MenuGroupsCollection.Load (MenuFileName [,BaseMenu]) NAME DATA

TYPE

DESCRIPTION

MenuFileName String Đ ờng dẫn và tên File sẽđ ợc tải vào AutoCad.

BaseMenu Boolean Thông số này xác định menu group đ ợc tải là menu

cơ bản hay menu từng phần. Gia trị True là base menu. Ng ợc lại sẽ là partial menu. Mặc định là False.

Sử dụng tham số BaseMenu với giá trị True sẽ t ơng đ ơng với việc thực hiện lệnh MENU trong AutoCAD (hoặc thi hành lệnh MENULOAD và check vào lựa chọn Replace All). Chỉ MenuGroup mới mới đ ợc Load và nó sẽ thay thế tất cả các menu cũ trong AutoCad.

Nh một lựa chọn, sử dụng ph ơng thức Load Với tham số BaseMenu là False, t ơng đ ơng với bạn thi hành lệnh MENULOAD trong AutoCAD mà không check vào lựa chọn. Replace All. Menu group đ ợc

tải thêm vào AtutoCad.

Ki u c a Menu Groups BỘ MÔN TIN HỌC XÂY DỰNG KHOA CÔNG NGHỆ THÔNG TIN TRƯỜNG ĐẠ I HỌC XÂY DỰNG

Để lấy thông số kiểu của menu groups đã đ ợc tải vào trong AutoCAD, bạn có thể sử dụng thuộc tính Type cho mỗi MenuGroup object. Cú pháp nh sau :

lngMenuGroupType = MenuGroupObject.Type

CONSTANT VALUE DESCRIPTION

AcBaseMenuGroup 0 Menu group là base menu group.

AcPartialMenuGroup 1 Menu group là partial menu group.

Ví dụ sau sẽ liệt kê tất cả các menu group đã đựoc tải vào trong AutoCad và kiểu của chúng: Public Sub ListMenuGroups()

Dim objMenuGroup As AcadMenuGroup Dim strMenuGroupNames As String

strMenuGroupNames = "The following menu groups are currently loaded, " For Each objMenuGroup In Application.MenuGroups

If objMenuGroup.Type = acBaseMenuGroup Then

strMenuGroupNames = strMenuGroupNames & vbCrLf & _ objMenuGroup.Name & ": Base menu"

Else

strMenuGroupNames = strMenuGroupNames & vbCrLf & _ objMenuGroup.Name & ": Partial menu" End If

Next

MsgBox strMenuGroupNames End Sub

L u ý :

• MenuGroups collection khơng có ph ơng thức Add. Tuy nhiên bạn có thể tạo một bản copy file .mns vào một file mới, sau đó tải và sửa chữa nó theo ý của bạn. Bạn cũng có thể tạo một file .mnu hoặc .mns mới và tải chúng từ VBA.

• Bạn khơng thể chỉnh sửa đ ợc các menu hình ảnh, menu màn hình và các bảng số hóa. Tuy nhiên, bạn vẫn có thể Load và UnLoad chúng bằng VBA.

Một phần của tài liệu LẬP TRÌNH TRONG AUTOCAD (Trang 76 - 77)

Tải bản đầy đủ (PDF)

(101 trang)