Pull-down Menu

Một phần của tài liệu AUTOCAD NÂNG CAO VÀ LẬP TRÌNH TRONG AUTOCAD docx (Trang 90 - 93)

V. To các m um tc t ắ 1 File m u m t c t ẫặ ắ

2. Tùy bi nm tmenu ộ

2.3. Pull-down Menu

2.3.1.Section c a Pull-down menuủ

Puldown menu được khai báo t section Pop1 đ n pop499. m i section có th có m từ ế ỗ ể ộ

ho c nhi u menu đ (thông thặ ề ổ ường là ch a 1). Trong m i menu đô có th ứ ỗ ̉ ể co ́t i đa 999ố

m c menuụ item. AutoCAD se bo qua nh ng menu item ṽ ̉ ư ượt qua gi i han trên. Nêu mań ớ ̣ ́ ̀

hinh không đu chô ch a hêt cac menu item thi AutoCAD se t đông căt b t đi đê v a v ì ̉ ̃ ứ ́ ́ ̀ ̃ ự ̣ ́ ớ ̉ ừ ớ

kich th́ ước man hinh va hai hinh mui tên lên xuông se đ̀ ̀ ̀ ̀ ̃ ́ ̃ ược xuât hiên.́ ̣

Pulldown chia lam hai loai.̀ ̣

Loai th nhât co section t pop1 đên pop 16. Cac menu nay se đ̣ ́ ́ ́ ́ ̀ ̃ ượ ực t đông taị ̉

vao vi tri cua no trên man hinh. N u section này mà có nhi u h n m t menu thì̀ ̣ ́ ̉ ́ ̀ ̀ ế ơ

ch menu đ u tiên m i đỉ ớ ượ ảc t i vào màn hình.

Loai th hai co section t Pop17 đên pop 499. Cac menu nay se không t đông̣ ́ ́ ́ ̀ ̃ ̣

được tai vao man hinh. Tuy nhiên ta vân co thê tai no vào màn hình băng lênh̉ ̀ ̀ ̀ ̃ ́ ̉ ̉ ́ ̀ ̣

menuload hoăc băng ch c năng menu swapping.̣ ̀

Các quy ước tao tiêu đ c a menu.ề ủ

Ký t Ý nghĩa

-- Dòng phân cách trên thanh menu đổ

-> B t đ u m t menu cha (submenu)ắ ầ ộ

<- K t thúc menu cha (k t thúc submenu)ế ế

<-<- Khai báo cu i cùng c a submenu và menu đố ủ ổ

$( ) Cho phép s d ng chu i DIESEL trong tiêu đ m c menuItem.ử ụ ỗ ề ụ

~ Làm m m c ch n và không cho phép ch n m c nàyờ ụ ọ ọ ụ

!. Làm xu t hi n d u ch n (ấ ệ ầ ọ √) trước menu.

& Làm xu t hi n d u g ch chân cho ký t đ ng sau nó (khai báo phím t t)ấ ệ ấ ạ ự ứ ắ

\t Canh l ph i cho ký t trong tiêu đ c a m c ch n.ề ả ự ề ủ ụ ọ

\c Khai báo phím nóng. Phân tích ví d sau :ụ **FILE ID_MnFile [&File] ID_New [&New...\tCtrl+N]^C^C_new ID_Open [&Open...\tCtrl+O]^C^C_open ID_DWG_CLOSE [&Close]^C^C_close [--] ID_Save [&Save\tCtrl+S]^C^C_qsave

ID_Saveas [Save &As...\tCtrl+Shift+S]^C^C_saveas ID_Export [&Export...]^C^C_export

[--]

ID_Inan [->Print]

ID_Preview [/vPlot Preview]^C^C_preview

ID_PlotSetup [Pa&ge Setup Manager...]^C^C_pagesetup ID_PlotMgr [Plotter &Manager...]^C^C_plottermanager ID_Print [<-&Plot...\tCtrl+P]^C^C_plot

[--]

ID_MRU [Drawing History] [--] ID_APP_EXIT [E&xit\tCtrl+Q]^C^C_quit Phân tích ví d sau :ụ [Pop&3] ID_ortho [$(if,$(getvar,orthomode),!.)Ortho]^O ID_Snap [$(if,$(getvar,snapmode),!.)Snap]^B ID_grid [$(if,$(getvar,gridmode),!.)Gride]^G ID_cmdactive [$(if,$(getvar,cmdactive),~)line]Line

2.3.3.Tham chi u đ n pulldown menuế ế

Ta có th làm m hay đánh d u ch n cho các menu Item, ho c ta cũng có th l y cácể ờ ấ ọ ặ ể ấ

thông s tr ng thái c a t ng menu Item b ng cách s d ng tham chi u thông qua các hàmố ạ ủ ừ ằ ử ụ ế

AutoLisp.

Có hai lo i tham chi u :ạ ế

− Tham chi u tế ương đ iố

− Tham chi u tuy t đ i.ế ệ ố

Tham chi u tế ương đ i.ố

Hàm menucmd c a AutoLisp cho phép ta tham chi u đ n các m c c a pulldownủ ế ế ụ ủ

menu.

Cú pháp :

− Đ gán tr ng thái cho menuể ạ

(menucmd “Gyyy.zzz=xxx”)

− Đ l y thông s tr ng thái c a menuể ấ ố ạ ủ

(menucmd “Gyyy.zzz=?”) hàm tr v giá tr xxxả ề

Trong đó

yyy – tên c a nhóm menuủ

zzz – nhãn m c ch nụ ọ

xxx - tr ng thái c a menu : “~” (làm m ), “!.” (đạ ủ ờ ược đánh đ u ch n) “” (tr ngấ ọ ạ

thái bình thường. • Tham chi u tuy t đ iế ệ ố

Tham chi u tuy t đ i là tham chi u d trên vi c đ m s lế ệ ố ế ự ệ ế ố ượng các menu trên màn hình.

Hàm menucmd c a AutoLisp cho phép ta tham chi u đ n các m c c a pulldownủ ế ế ụ ủ

menu.

Cú pháp :

− Đ gán tr ng thái cho menuể ạ

(menucmd “Pn.i=xxx”)

− Đ l y thông s trang thái c a menuể ấ ố ủ

(menucmd “Pn.i=#?”) hàm tr v giá tr xxxả ề

Trong đó

n – s th t c a menu đ tính t trái sang ph i trên màn hình.ố ứ ự ủ ổ ừ ả

i – s th t c a menu item c n tham chi u đ n (tính c submenu và d u ngănố ứ ự ủ ầ ế ế ả ấ

cách gi a các ph n trong menu đ )ữ ầ ổ

xxx – Giá trih c a xxx b ng “Pn.i=”&tr ng thái c a menu : “~” (làm m ), “!.”ủ ằ ạ ủ ờ

(được đánh đ u ch n) “” (tr ng thái bình thấ ọ ạ ường.

Ví d : ụ

ID_Swap1 [Swaping1]^C^C^P(if (= (menucmd "P1.1=#?") "P1.1=~") (menucmd "P1.1=") (menucmd "p1.1=~") )

ID_Swap2 [Swaping2]^C^C^P(if (= (menucmd "GACAD.ID_new=?") "~") (menucmd "GACAD.ID_new=") (menucmd "GACAD.ID_new=~") )

2.3.4.Chèn và lo i b Pull-down menu trên menubarạ ỏ

Ngoài l nh MenuLoad, các pull-down menu c a nhóm này có th đẹ ủ ể ược đ a vào thanhư

menub ng cú pháp sau đây :ằ

(Menucmd “Gyyy.zzz=+uuu.vvv)

Trong đó :

Gyyyzzz - s xác đ nh v trí c a pull-down menu uuu.vvv s chèn vào.ẽ ị ị ủ ẽ

yyy – Tên nhóm menu c a pull-down menu xác đ nh v trí.ủ ị ị

zzz – Bí danh (hay tên m c ch n) c a pull-down menu xác đ nh v trí choụ ọ ủ ị ị

uuu.vvv chèn vào .

uuu – Tên nhóm menu c a pull-down menu mu n chèn.ủ ố

Ví d : ụ ***pop3 **Test3 [Pop&3] ID_ortho [$(if,$(getvar,orthomode),!.)Ortho]^O ID_Snap [$(if,$(getvar,snapmode),!.)Snap]^B ID_grid [$(if,$(getvar,gridmode),!.)Gride]^G ID_cmdactive [$(if,$(getvar,cmdactive),~)line]Line

ID_huybo [Xoa menu]^c^C(menucmd "Gcustom.pop3=-")

ID_chenpop4 [Chen pop4]^C^C(menucmd "Gcustom.pop3=+Custom.Pop4") ***pop4

**Test4

[Pop&4]

ID_monew1 [mo new]^C^C^P(menucmd "Gcustom.ID_New=~");^P ID_hiennew1 [hien new]^C^C^P(menucmd "Gcustom.ID_New=");^P

ID_TTnew1 [ben menucmd]^C^C^P(alert (menucmd "Gcustom.ID_New=?"));^P [--]

ID_monew2 [mo new]^C^C^P(menucmd "P5.1=~");^P ID_hiennew2 [hien new]^C^C^P(menucmd "P5.1=");^P

ID_TTnew2 [ben menucmd]^C^C^P(alert "Cmdmenu"&(menucmd "P5.1=#?"));^P

Một phần của tài liệu AUTOCAD NÂNG CAO VÀ LẬP TRÌNH TRONG AUTOCAD docx (Trang 90 - 93)

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

(101 trang)