Ã÷¾­CADÉçÇø

 ÕÒ»ØÃÜÂë
 ×¢²á

QQ怬

Ö»ÐèÒ»²½£¬¿ìËÙ¿ªÊ¼

ËÑË÷
²é¿´: 75589|»Ø¸´: 158

[×ÊÔ´] ¼òµ¥µÄ×Ô¶¨Ãæ°åº¯Êý

    [¸´ÖÆÁ´½Ó]
·¢±íÓÚ 2011-1-3 22:54:02 | ÏÔʾȫ²¿Â¥²ã |ÔĶÁģʽ
±¾Ìû×îºóÓÉ szmaicy ÓÚ 2011-6-10 11:05 ±à¼­


;Ð޸İ棬Ïò·Éʫѧϰ
(defun c:xxx ()
  (mai_make_panel
    (list
      (list "Áº"
            (list "»­    Áº" "circle") ;(list  °´Å¥±êÇ©  ÔËÐеÄÃüÁî)
            (list "µ¥Ïß±äÁº" "mini_line_to_beam")
            (list "·¤°åÁºµ¹½Ç" "mini_foundation_beam")
            (list "ÐÞ²¹ÁºÖù" "mini_fix_beam")
            (list "ÐÞ²¹Ë«Ïß" "mini_fix_dline")
            (list "¿òÑ¡ÐÞ²¹Ïß" "mini_fix_line")
      ) ;_ ½áÊølist
      (list "Öù"
            (list " £« ÐÍÖù" "mini_c_column")
            (list " £Ì ÐÍÖù" "mini_l_column")
            (list " £Ô ÐÍÖù" "mini_t_column")
            (list " ¡ð ÐÍÖù" "mini_O_column")
            (list " ¡õ ÐÍÖù" "mini_r_column")
            (list "ÖáÏß²¼Öù" "mini_axis_column")
            (list "Ìî ³ä Öù" "mini_fill_column")
            (list "ǽÌåÌî³ä" "mini_fill_wall")
            (list "תPKPM GSÖù" "mini_pline_to_beam")
            (list "¶àÏß±äÖù" "mini_pline_to_column")
      ) ;_ ½áÊølist
    ) ;_ ½áÊølist
  ) ;_ ½áÊømai_mak_panel
  (princ)
)


(defun mai_make_panel ( menulist / n num_nobut num_button nn nnn menuname val_lst add_dclrow tt order_lst in num_image)
  (defun add_dclrow ( dstr / ) (if dstr (setq val_lst (cons dstr val_lst))))
  (setq menuname (strcat (vl-filename-mktemp) "temp_pannel.dcl"))
  (add_dclrow "curbutton:button{width=10;vertical_margin=none;vertical_margin=none;}")
  (add_dclrow "curimage:image{width=10;height=0.2;vertical_margin=none;vertical_margin=none;}")
  (add_dclrow "curpanel:dialog{label=\"ÃÔÄã×Ô¶¨ÒåÃæ°å\";alignment=centered;vertical_margin=none;horizontal_margin=none;")
  (add_dclrow ":row{")
  (setq len (apply 'max (mapcar 'length menulist))
        order_lst (apply 'append (mapcar 'cdr menulist))
        num_button 0
        num_nobut 0
        in 0
        num_image 0
  )
  (foreach nn menulist
        (setq in 0)
        (add_dclrow (strcat " : boxed_column{label=\"" (car nn) "\";vertical_margin=none; horizontal_margin=none;"))
        (foreach nnn (cdr nn)
           (setq num_button (1+ num_button)
                 in (1+ in)
                 num_image (1+ num_image)
                 tt (car nnn)
                 tt (if tt tt "")
           )
           (add_dclrow (strcat ":curbutton{label=\"" tt "\";key=\"but" (itoa num_button) "\";}"))
           (if (= 4 in)
               (progn (add_dclrow (strcat ":curimage{key=\"ima" (itoa num_image) "\";color=18;}"))
                      (setq in 0)
               )
           )
        )
        (repeat (- len (length nn))
           (setq num_nobut (1+ num_nobut)
                 in (1+ in)
                 num_image (1+ num_image)
           )
           (add_dclrow (strcat " : curbutton{key=\"butno" (itoa num_nobut) "\";color=-2;}"))
           (if (= 4 in)
               (progn (add_dclrow (strcat ":curimage{key=\"ima" (itoa num_image) "\";}"))
                      (setq in 0)
               )
           )
        )
        (add_dclrow "spacer;}")
  )
   (add_dclrow "}:button{label=\"¹Ø±Õ\";key=\"cancel\";is_cancel=true;width=10;fixed_width=true;alignment=centered;}}")
   (vl-file-delete menuname)
   (setq nn (open menuname "w"))
   (foreach n (reverse val_lst) (write-line n nn))
   (close nn)
   (setq nnn (load_dialog menuname))
   (if (not (new_dialog "curpanel" nnn)) (exit))
   (setq n 0)
   (repeat num_nobut (mode_tile (strcat "butno" (itoa num_nobut)) 1) (setq num_nobut (1- num_nobut)))
  (foreach nn menulist
        (foreach nnn (cdr nn)
           (setq n (1+ n)
                 tt (car nnn)
                 tt (if tt tt "")
           )
           (if (= tt "")
               (mode_tile (strcat "but" (itoa n)) 1)
               (action_tile (strcat "but" (itoa n)) (strcat "\(done_dialog " (itoa n) "\)"))
           )
        )
  )
   (setq nn (start_dialog))
   (unload_dialog nnn)
   (vl-file-delete menuname)
  (if (> nn 0)
       (progn (setq tt (cadr (nth (1- nn) order_lst)))
              (princ "\n")
              (if (= (eval (read (strcat "(type c:" tt ")"))) 'SUBR)
                  (eval (read (strcat "(c:" tt ")")))
                  (vl-cmdf tt)
              )
       )
   )
)

±¾Ìû×ÓÖаüº¬¸ü¶à×ÊÔ´

ÄúÐèÒª µÇ¼ ²Å¿ÉÒÔÏÂÔØ»ò²é¿´£¬Ã»ÓÐÕ˺ţ¿×¢²á

x

µãÆÀ

¿á±Ð  ·¢±íÓÚ 2011-1-4 11:53

ÆÀ·Ö

²ÎÓëÈËÊý 13Ã÷¾­±Ò +8 ½ðÇ® +240 ÊÕÆð ÀíÓÉ
kucha007 + 1
pzweng + 3 ºÜ¸øÁ¦!
ucuc2003 + 1
zctao1966 + 1 ºÜ¸øÁ¦!
chlh_jd + 1 + 15
qjchen + 1 + 30 ÔÞÒ»¸ö!
l64631778 + 20 ÀÏÂõºÃÁ÷b°¡
ÖÙÎÄÓñ + 30 Ö§³ÖÀÏÂõ£¡£¡
xyz2009xyz + 20 ºÇºÇ£¬½èÓÃÁË£¬¸ÐлһÏ£¡
redcat + 20 Ô­´´ÄÚÈÝ

²é¿´È«²¿ÆÀ·Ö

"¾õµÃºÃ£¬¾Í´òÉÍ"
»¹Ã»ÓÐÈË´òÉÍ£¬Ö§³ÖÒ»ÏÂ

±¾Ìû±»ÒÔÏÂÌÔר¼­ÍƼö:

·¢±íÓÚ 2011-1-7 16:07:14 | ÏÔʾȫ²¿Â¥²ã
±¾Ìû×îºóÓÉ redcat ÓÚ 2011-3-7 15:24 ±à¼­

ÔÚÀÏÂõµÄ»ù´¡ÉÏÐÞ¸ÄÁËһϣºÖ÷ÒªÊÇÎļþÉú³ÉºÍɾ³ý2¸öº¯Êý£¨ÇëÂ󹤲»ÒªÉúÆø£¬ºÇºÇ^_^£©
  1. ;;Óû§¿É×Ô¼ºÐ޸ĽçÃæ
  2. (defun c:xxx ()
  3.   (mai_make_panel
  4.     (list
  5.       (list "Áº"
  6.       (list "»­    Áº" "circle") ;(list  °´Å¥±êÇ©  ÔËÐеÄÃüÁî)
  7.       (list "µ¥Ïß±äÁº" "mini_line_to_beam")
  8.       (list "·¤°åÁºµ¹½Ç" "mini_foundation_beam")
  9.       (list "ÐÞ²¹ÁºÖù" "mini_fix_beam")
  10.       (list "ÐÞ²¹Ë«Ïß" "mini_fix_dline")
  11.       (list "¿òÑ¡ÐÞ²¹Ïß" "mini_fix_line")
  12.       ) ;_ ½áÊølist
  13.       (list "Öù"
  14.       (list " £« ÐÍÖù" "mini_c_column")
  15.       (list " £Ì ÐÍÖù" "mini_l_column")
  16.       (list " £Ô ÐÍÖù" "mini_t_column")
  17.       (list " ¡ð ÐÍÖù" "mini_O_column")
  18.       (list " ¡õ ÐÍÖù" "mini_r_column")
  19.       (list "ÖáÏß²¼Öù" "mini_axis_column")
  20.       (list "Ìî ³ä Öù" "mini_fill_column")
  21.       (list "ǽÌåÌî³ä" "mini_fill_wall")
  22.       (list "תPKPM GSÖù" "mini_pline_to_beam")
  23.       (list "¶àÏß±äÖù" "mini_pline_to_column")
  24.       ) ;_ ½áÊølist
  25.     ) ;_ ½áÊølist
  26.   ) ;_ ½áÊømai_make_panel
  27.   (princ)
  28. ) ;_ ½áÊødefun

  29. (defun mai_make_panel (menulist / m n nn nnn menuname val_lst tt order_lst)

  30.   (defun add_dclrow (dstr)
  31.     (if  dstr
  32.       (setq val_lst (cons dstr val_lst))
  33.     ) ;_ ½áÊøif
  34.   ) ;_ ½áÊødefun

  35.   (add_dclrow "curbutton : button{width=10;vertical_margin=none;vertical_margin=none;}")
  36.   (add_dclrow
  37.     "curpanel : dialog{label=\"ÃÔÄ㹤¾ßÏä\";alignment=centered;vertical_margin=none;horizontal_margin=none;"
  38.   ) ;_ ½áÊøadd_dclrow
  39.   (add_dclrow ":row{")
  40.   (setq  len    (apply 'max (mapcar 'length menulist))
  41.   order_lst (apply 'append (mapcar 'cdr menulist))
  42.   n    0
  43.   m    0
  44.   ) ;_ ½áÊøsetq
  45.   (foreach nn menulist
  46.     (add_dclrow
  47.       (strcat " : boxed_column{label=\"" (car nn) "\";vertical_margin=none; horizontal_margin=none;")
  48.     ) ;Ìí¼ÓÁбí¿ò
  49.     (foreach nnn (cdr nn)
  50.       (setq n  (1+ n)
  51.       tt (car nnn)
  52.       tt (if tt
  53.      tt
  54.      ""
  55.          ) ;_ ½áÊøif
  56.       ) ;_ ½áÊøsetq
  57.       (add_dclrow (strcat " : curbutton{key=\"but" (vl-princ-to-string n) "\";label=\"" tt "\";}"))
  58.     ) ;Ìí¼ÓÁбí¿òÖеİ´Å¥
  59.     (repeat (- len (length nn))
  60.       (setq m (1+ m))
  61.       (add_dclrow (strcat " : curbutton{key=\"butno" (vl-princ-to-string m) "\";}"))
  62.     ) ;°´Áв¹ÆëÁбí¿òÖеİ´Å¥
  63.     (add_dclrow "}")
  64.   ) ;_ ½áÊøforeach

  65.   (add_dclrow
  66.     "}:button{label=\"¹Ø±Õ\";key=\"cancel\";is_cancel=true;width=10;fixed_width=true;alignment=centered;}}"
  67.   )


  68.   (setq menuname (vl-filename-mktemp "temp_pannel.dcl"))
  69.   (setq nn (open menuname "w"))
  70.   (foreach n (reverse val_lst) (write-line n nn))
  71.   (close nn)
  72.   (setq nnn (load_dialog menuname))
  73.   (vl-file-delete menuname)

  74.   (if (not (new_dialog "curpanel" nnn))
  75.     (exit)
  76.   ) ;_ ½áÊøif
  77.   (setq n 0)
  78.   (repeat m (mode_tile (strcat "butno" (vl-princ-to-string m)) 1) (setq m (1- m))) ;½ûÓò¹ÆëÁбí¿òÖеİ´Å¥
  79.   (foreach nn menulist
  80.     (foreach nnn (cdr nn)
  81.       (setq n  (1+ n)
  82.       tt (car nnn) ;tt order_lst
  83.       tt (if tt
  84.      tt
  85.      ""
  86.          ) ;_ ½áÊøif
  87.       ) ;_ ½áÊøsetq
  88.       (if (= tt "")
  89.   (mode_tile (strcat "but" (vl-princ-to-string n)) 1)
  90.   (action_tile
  91.     (strcat "but" (vl-princ-to-string n))
  92.     (strcat "(done_dialog " (vl-princ-to-string n) ")")
  93.   ) ;_ ½áÊøaction_tile
  94.       ) ;_ ½áÊøif
  95.     ) ;_ ½áÊøforeach
  96.   ) ;_ ½áÊøforeach

  97.   (setq nn (start_dialog))
  98.   (unload_dialog nnn)


  99.   (if (> nn 0)
  100.     (progn (setq tt (cadr (nth (1- nn) order_lst))) ;È¡µã»÷°´Å¥µÄÖµ(Õâ¸öºÜ¹Ø¼ü)
  101.      (if (= (eval (read (strcat "(type c:" tt ")"))) 'SUBR)
  102.        (progn (princ "\n")
  103.         (eval (read (strcat "(c:" tt ")")))
  104.        ) ;_ ½áÊøprogn
  105.        (progn
  106.          (princ "\n")
  107.          (vla-SendCommand (vla-get-ActiveDocument(vlax-get-acad-object)) (strcat tt "\n"))
  108.        ) ;_ ½áÊøprogn
  109.      ) ;_ ½áÊøif
  110.     ) ;_ ½áÊøprogn
  111.   ) ;_ ½áÊøif
  112. ) ;_ ½áÊødefun

·¢±íÓÚ 2015-10-9 09:01:57 | ÏÔʾȫ²¿Â¥²ã
°Ñ½áÊø²¿·ÖµÄ´úÂëÐÞ¸Äһϣ¬ÒÔÖ§³ÖÖ±½Óдlisp´úÂë¡£
Ô­´úÂ룺
              (if (= (eval (read (strcat "(type c:" tt ")"))) 'SUBR)
                  (eval (read (strcat "(c:" tt ")")))
                  (vl-cmdf tt )
              )
Ð޸ĺó£º
      (if (= (substr tt 1 1)  "(" )
           (eval (read tt))
           (vl-cmdf tt )
       )

¸ÄºóÖ§³Ö¶¨Òå±í£º

    (list
      (list "Îı¾´¦Àí"
          ;;(list  °´Å¥±êÇ©  ÔËÐеÄÃüÁî ),ÃüÁîÀàÐÍ·Ölisp´úÂëºÍÆäËüÃüÁîÁ½ÖÖ
            (list "µ¥Ðкϲ¢Îªµ¥ÐÐ" "(TextsCombine)" )
            (list "µ¥Ðкϲ¢Îª¶àÐÐ" "(***)")
            (list "µ¥ÐÐת¶àÐÐ" "(***)" )
                                    (list "Õ¨¿ªÎı¾" "***")
      )
      (list "Êý×Ö´¦Àí"
            (list "µÝÔö¸´ÖÆ" "(c:***)")
      )
    )
·¢±íÓÚ 2020-1-19 12:55:31 | ÏÔʾȫ²¿Â¥²ã
xj6019 ·¢±íÓÚ 2019-12-4 08:18
½çÃæ̫СÁ˵㠠×ÖÌå²»¹»´ó  Ë­ÌáʾһÏ   °Ñ½çÃæºÍ×ÖÌå·Å´óÒ»µã ¸ÄÄÄÀïµÄ´úÂë°¡£¿

(add_dclrow "curbutton:button{width=8;vertical_margin=none;vertical_margin=none;}")

8¸Ä´óЩ
·¢±íÓÚ 2011-1-4 11:53:12 | ÏÔʾȫ²¿Â¥²ã
ºÃ¶«Î÷°¡ ÕâÑù¿ÉÒÔ×Ô¼º¶¨Òå°´Å¥ÁË
·¢±íÓÚ 2011-1-4 12:10:19 | ÏÔʾȫ²¿Â¥²ã
ºÍÐŵÄÓÐһƴ£¬²»¹ýÐŵÄbutton´øÇý¶¯
·¢±íÓÚ 2011-1-4 12:10:54 | ÏÔʾȫ²¿Â¥²ã
ºÃ¶«Î÷,¸Ðл¥Ö÷·ÖÏí!
·¢±íÓÚ 2011-1-4 12:53:00 | ÏÔʾȫ²¿Â¥²ã
лл·ÖÏí£¬½øÀ´Ñ§Ï°¡£
·¢±íÓÚ 2011-1-5 09:04:24 | ÏÔʾȫ²¿Â¥²ã
¶àлÌṩģ°å¡£
·¢±íÓÚ 2011-1-5 11:38:40 | ÏÔʾȫ²¿Â¥²ã
·±ÖصĻî·Öнâ·Å³öÀ´ÁË
·¢±íÓÚ 2011-1-5 20:58:40 | ÏÔʾȫ²¿Â¥²ã
ÕæÅ££¡
·¢±íÓÚ 2011-1-6 09:05:29 | ÏÔʾȫ²¿Â¥²ã
Ê×ÏÈ£¬·Ç³£¸Ðл¥Ö÷ÌṩµÄ³ÌÐò£¬·Ç³£ºÃÓã¡
¿ÉÊÇÓиöСÎÊÌ⣬ÔÚÃæ°åÖеã»÷¡°È·ÈÏ¡±Ê±£¬»áÖ´ÐС°»­Áº¡±ÃüÁ²»ÖªÎªºÎ£¬Çë²»Áߴͽ̣¬Ð»Ð»
·¢±íÓÚ 2011-1-6 10:30:35 | ÏÔʾȫ²¿Â¥²ã
°ÑokÈÃÀÏÂõÈ¥µô
ÄúÐèÒªµÇ¼ºó²Å¿ÉÒÔ»ØÌû µÇ¼ | ×¢²á

±¾°æ»ý·Ö¹æÔò

СºÚÎÝ|ÊÖ»ú°æ|CADÂÛ̳|CAD½Ì³Ì|CADÏÂÔØ|ÁªÏµÎÒÃÇ|¹ØÓÚÃ÷¾­|Ã÷¾­Í¨µÀ ( ÔÁICP±¸05003914ºÅ )  
©2000-2023 Ã÷¾­Í¨µÀ °æȨËùÓÐ ±¾Õ¾´úÂ룬ÔÚδȡµÃ±¾Õ¾¼°×÷ÕßÊÚȨµÄÇé¿öÏ£¬²»µÃÓÃÓÚÉÌÒµÓÃ;

GMT+8, 2024-11-25 07:32 , Processed in 0.177800 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

¿ìËٻظ´ ·µ»Ø¶¥²¿ ·µ»ØÁбí