尘缘一生 发表于 2018-5-30 17:16:43

toolbar工具栏加载后,为何不能全部调出来?

本帖最后由 尘缘一生 于 2018-5-31 23:52 编辑

自己写了LISP创建工具栏菜单组代码,在AUTOCAD2014版下加载,工具栏不能全部调出,大家分析原因在哪?就是下面几句,只有2句奏效:


[*](if (menugroup "三领工具栏"); 若已加载三领工具栏
[*]    (progn
[*]      (command "toolbar" "SL-绘制" "s" ) ; 显示工具栏
[*]      (command "toolbar" "SL-钢筋" "s" )
[*]      (command "toolbar" "SL-查询" "s" )
[*]      (command "toolbar" "SL-编辑" "s" )
[*]      (command "toolbar" "SL-常用" "s" )
[*]      (command "toolbar" "SL-文件" "s" )
[*]      (command "toolbar" "SL-缩放" "s" )
[*]      (princ)
[*]    )
[*])


程序代码如下:


;;判断【三领外挂工具栏】菜单是否加载,没有则创建并加载之
(defun create_toolbar (/ file lst x)
(if (null (menugroup "三领工具栏")); 判断cad是否加载三领工具栏
    (progn          ; 如果没加载,则自动执行下面程序
      ;;;;;(alert "\n程序自动创建\"三领工具栏\",请稍后")
      (setq file (open "D:/三领外挂/三领工具栏.mnu" "W")) ; 在cad搜索目录创建一个菜单mnu文件,写状态打开
      (foreach x '(
                  "***menugroup=三领工具栏"
                  "***toolbars"
                  "**绘制"
                  ""
                  "^c^c_line "
                  "^c^cyx "
                  "*^c^cpline;\\w;(* (getvar \"DIMSCALE\") 0.45);(* (getvar \"DIMSCALE\") 0.45) "
                  "*^c^cpline;\\w;(* (getvar \"DIMSCALE\") 0.7);(* (getvar \"DIMSCALE\") 0.7)"
                  "^c^c_pline;\\w;0;0 "
                  "^c^c_spline"
                  "^c^cpxx "
                  "^c^csuan-xz "
                  "^c^cxzp"
                  "^c^cxzc "
                  "^c^cxxzp "
                  "^c^cxxzc "
                  "^c^cxhz"
                  "^c^cx-hz "
                  "^C^C2parc"
                  "^c^cce"
                  "^c^c_circle "
                  "^c^c_ellipse"
                  "^c^ctcyx "
                  "^c^cgangjind "
                  "*^c^c_point "
                  "^c^c_rectang "
                  "^c^cgjk "
                  "^c^cth "
                  "^c^ctcjx "
                  "^c^cslot "
                  "[--]"
                  "^c^cpmhao "
                  "^c^cpq "
                  "^c^cxth "
                  "^c^cfxth "
                  "^c^c3phf "
                  "^c^cjt "
                  "^c^cduichen "
                  "^c^czdx "
                  "^c^czdx1 "
                  "^c^csyp "
                  "^c^cl-bgf "
                  "^c^cr-bgf "
                  "^c^czhux-hao "
                  "^c^cxthao "
                  "[--]"
                  "^c^c_bhatch "
                  "^c^ctcqx "
                  "^c^ctchnt "
                  "^c^ctcqc "
                  "^c^cjctc "
                  "^c^ctt "
                  "[--]"
                  "^c^cll "
                  "^c^cdd-dim "
                  "^c^cali-dim "
                  "^c^cccjx-h "
                  "^c^chu "
                  "^c^cyxbz "
                  "^c^czb"
                  
                  
                  "**钢筋"
                  ""
                  "^c^cmggl "
                  "^c^c(startapp \"d://三领外挂//实用程序//型钢截面特性查询及计算工具.exe\")"
                  "^c^c(startapp \"d://三领外挂//实用程序//TSSD2010选筋表.exe\")"
                  "^c^cbj "
                  "^c^cban-zj "
                  "^c^cban-fj "
                  "^c^cgujin"
                  "^c^c1-3 "
                  "^c^c2-3 "
                  "^c^c3-3 "
                  "^c^c4-3 "
                  
                  "**查询"
                  ""
                  "^c^cus-list "
                  "^c^cfid "
                  "^c^cchahz "
                  "^c^c_area "
                  "^c^cprintdxf "
                  "'_dist "
                  "^c^ccr "
                  
                  "**编辑"
                  ""
                  "*^c^c_erase si auto "
                  "^c^cdellayer "
                  "^c^c_oops "
                  "^c^c_trim "
                  "*^c^cmove;\\;(nth 1(grread 5)) "
                  "^c^csmove "
                  "^c^cpy "
                  "[--]"
                  "*^c^ccopy;\\;(nth 1(grread 5)) "
                  "^c^ccopym "
                  "^c^cscopy "
                  "^c^cpyfz "
                  "^c^c_offset "
                  "^c^cys "
                  "*^c^c_stretch c "
                  "^c^cnum-sc "
                  "^c^c_chamfer "
                  "^c^c_fillet "
                  "^c^cang-rot "
                  "^c^c(if (null c:x-rot-mov )(load \"x-rot-mov.vlx\"));x-rot-mov "
                  "^c^cx-rotate "
                  "^c^cc-gx "
                  "^c^c_explode "
                  "^c^cexpline "
                  "^c^cgx00"
                  "^c^cgx070 "
                  "^c^cgx045 "
                  "^c^cpn1 "
                  "^c^cjf "
                  "^c^c_pedit "
                  "^c^ch-mr-mv "
                  "^c^cv-mr-mv "
                  "^c^ch-mr-mv-n "
                  "^c^cv-mr-mv-n "
                  "^c^cj-mirror "
                  "^c^c_array "
                  "*^c^c_break \\_f "
                  "^c^cch-cxx "
                  "^c^cch-csx "
                  "^c^cch-cl "
                  "^c^cch-czx "
                  "^c^cdt-xx "
                  "^c^cch-xz "
                  "^c^cch-sz "
                  "^c^ctt "
                  
                  "**常用"
                  " "
                  "[--]"
                  "^c^ct-explode "
                  "^c^cduprem "
                  "^c^cinsert "
                  "^c^cinsbase "
                  "$m=$(if,$(and,$(getvar,adcstate),1),'_adcclose,'_adcenter) "
                  "[--]"
                  "^c^c(if (null c:sstc )(load \"sstc.vlx\"));sstc "
                  "^c^c_ai_molc "
                  "'_layer "
                  "[--]"
                  ""
                  "[--]"
                  "^c^cas-c"
                  "^c^csc-zd "
                  "^c^csc-x"
                  "^c^c(if (null c:sb )(load \"sbv10.vlx\"));sb "
                  "[--]"
                  "'_matchprop "
                  "^c^cch-text "
                  "^c^cdd-cht "
                  "^c^cchgtext "
                  "^c^cch-sz-hi "
                  "^c^cch-hz-hi "
                  "^c^cmacedit "
                  "^c^c(if (null c:pmgz )(load \"pmgz.vlx\"));pmgz "
                  "^c^ccrfh "
                  "^c^cexpzi "
                  "^c^czhazxian "
                  "^c^czfhb"
                  "[--]"
                  "^c^cqiuhe "
                  "^c^cpjz "
                  "^c^c_qiuji "
                  "^c^cad "
                  "[--]"
                  "^c^c_preview "
                  "^c^c_pagesetup "
                  "^c^c(if (null c:BatchPlot-v3.6 )(load \"BatchPlot-v3.6.vlx\"));bplot "
                  "^c^c_plot "
                  "^c^c(startapp \"d://三领外挂//实用程序//calcplus.exe\") "
                  
                  "**文件"
                  " "
                  "^c^chtbl "
                  "^c^c(setvar \"DIMSCALE\" 100) "
                  "^c^c(setvar \"DIMSCALE\" 1) "
                  "^c^c "
                  "^c^c_new "
                  "^c^climtoext "
                  "[--]"
                  "^c^c_open"
                  "^c^c_qsave "
                  "^c^c_saveas "
                  "^c^c_wblock "
                  "^c^c_quit "
                  "^c^c_end "
                  "[--]"
                  "^c^c_cutclip "
                  "^c^c_copyclip "
                  "^c^c_pasteclip "
                  "^c^cpasteblock "
                  "[--]"
                  "_u"
                  "^c^c_mredo 1"
                  "^c^c(if (null c:cs )(load \"csstyle.vlx\"));cs "
                  "^c^cfs "
                  "^c^csc-t "
                  "^c^c_options "
                  "^c^c_appload "
                  
                  "**缩放"
                  " "
                  "'_zoom ; "
                  "^c^climtoext "
                  "'_pan "
                  "'_zoom _all "
                  "'_zoom _e"
                  "'_zoom;_w"
                  "'_zoom 2x "
                  "'_zoom .5x "
                  "^c^czoomc4x "
                  "^c^czoomc1/2x "
                  "'_pan ^p(trans (list (* -0.4 (getvar \"viewsize\")) 0) 0 1) ;^p "
                  "'_pan ^p(trans (list (* 0.4 (getvar \"viewsize\")) 0) 0 1) ;^p "
                  "'_pan ^p(trans (list 0 (* 0.4 (getvar \"viewsize\"))) 0 1) ;^p "
                  "'_pan ^p(trans (list 0 (* -0.4 (getvar \"viewsize\"))) 0 1) ;^p "
                  "^c^c5 "
                  "^c^c_regenall "
                  )
      (princ (strcat x "\n") file)   ; 将定义工具栏内容写入mnu文件
      )
      (close file)         ; 关闭mnu文件
      (command "menuload" "三领工具栏.mnu") ; 加载三领工具栏
    )
)
(if (menugroup "三领工具栏"); 若已加载三领工具栏
    (progn
      (command "toolbar" "SL-绘制" "s" ) ; 显示工具栏
      (command "toolbar" "SL-钢筋" "s" )
      (command "toolbar" "SL-查询" "s" )
      (command "toolbar" "SL-编辑" "s" )
      (command "toolbar" "SL-常用" "s" )
      (command "toolbar" "SL-文件" "s" )
      (command "toolbar" "SL-缩放" "s" )   
      (princ)
    )
)
)
(create_toolbar)    ; 本句的作用是加载本lisp就自动执行create_toolbar子程序

页: [1]
查看完整版本: toolbar工具栏加载后,为何不能全部调出来?