در این آموزش قصد داریم به وسیله زبان برنامه نویسی ویژوال لیسپ یک نوار ابزار در اتوکد ایجاد کنیم و یک آیتم به آن اضافه کنیم که با کلیک روی آن فرمان FIND در اتوکد اجرا شود. در این آموزش این کار را به صورت دینامیک انجام می دهیم یعنی اینکه نوار ابزار ایجاد می شود و پس از بستن اتوکد، از بین می رود.
mytoolbar.lsp
(defun c:mytoolbar () (vl-Load-com) (setq acadApp (vlax-get-acad-object)) (setq currMenuGroup (vlax-invoke-method (vlax-get-property acadapp "MenuGroups") "Item" "ACAD" ) ) (setq countToolbarItems (vlax-get-property (vlax-get-property currMenuGroup "Toolbars") "Count" ) ) (setq end nil) (setq i 0) (while (not end) (progn (setq newToolBar (vlax-invoke-method (vlax-get-property currMenuGroup "Toolbars") "Item" i ) ) (vlax-get-property newToolBar "Name") (if (= (vlax-get-property newToolBar "Name") "Test") (progn (princ i) (setq end T) ) ) (setq i (+ i 1)) (if (= i countToolbarItems) (setq end T) ) ) ) (if (/= (vlax-get-property newToolBar "Name") "Test") (progn (setq newToolBar (vlax-invoke-method (vlax-get-property currMenuGroup "Toolbars") "Add" "Test" ) ) ) ) (vlax-put-property newToolBar "Visible" 1) (if (/= (vlax-get-property newToolBar "DockStatus") 3) (vlax-invoke-method newToolBar "Dock" 3) ) (setq macro (strcat (chr 3) (chr 3) (chr 95) "FIND" (chr 32))) (setq newButton (vlax-invoke-method newToolBar "AddToolbarButton" "" "my_toolbar_item" "find" macro ) ) (vlax-invoke-method newButton "SetBitmaps" "D:/mytoolbar/16_16_find.bmp" "D:/mytoolbar/32_32_find.bmp" ) )
- یک پوشه در درایو D ایجاد کنید و نام آن را mytoolbar بگذارید.
- یک فایل متنی در این پوشه ایجاد کرده و نام آن را mytoolbar.lsp بگذارید.
- فایل mytoolbar.lsp را با برنامه notepad ویندوز ویرایش کرده و قطعه کد فوق را در آن قرار دهید و آن را ذخیره کنید.
- دو تصویر کوچک با ابعاد 16 در 16 پیکسل و 32 در 32 پیکسل با فرمت bmp بسازید و نام آن ها را 16_16_find.bmp و 32_32_find.bmp قرار دهید.
- اتوکد را بازکنید و فایل mytoolbar.lsp را به داخل آن کشیده و رها کنید. با این کار برنامه ما در اتوکد بارگذاری می شود. همچنین می توانید از دستور appload برای بارگذاری آن استفاده کنید.
- در اتوکد تایپ کنید : mytoolbar و اینتر کنید. باید مانند تصویر بالا یک نوار ابزار در سمت راست صفحه اتوکد ایجاد شود. با کلیک روی آیکون جستجو در این نوار ابزار، فرمان FIND اتوکد اجرا می شود. می توانید هر ماکروی دیگری که خواستید را برای آن بنویسید.
من قبلا این فایل را ایجاد کرده ام می توانید آن را از لینک زیر دانلود کرده و در درایو D، اکسترکت کنید.
دانلود نمونه فایل اتولیسپ ساخت نوار ابزار به وسیله اتولیسپ در اتوکد