AutoLISP切换开关toggle设计设置系统变量

AutoLISP切换开关toggle设计设置系统变量,DCL对话框代码如下。

dia6a:dialog {
    label = "TOGGLE切换开关应用" ;
    :boxed_column {
        label = "开关设定" ;
        :toggle {
            key = "tg_attdia" ;
            label = "ATTDIA属性对话框输入" ;
        }
        :toggle {
            key = "tg_dispsilh" ;
            label = "DISPSILH仅显示轮廓线" ;
        }
        :toggle {
            key = "tg_textfill" ;
            label = "TEXTFILL文字填充控制" ;
        }
        :toggle {
            key = "tg_fillmode" ;
            label = "FILLMODE对象填充模式" ;
        }
    }
    :boxed_column {
        label = "命令记录" ;
        :toggle {
            key = "tg_logfilemode" ;
            label = "LOGFILMODE命令记录开关" ;
        }
        :edit_box {
            edit_width = 30 ;
            key = "logfilemode" ;
            label = "命令记录文件" ;
        }
    }
    spacer_1;
    ok_cancel;
}

LSP文件代码如下。

(defun c:dia6a ()
    (setvar "cmdecho" 0)
    (dcl_dia6a)
    (prin1)
)
(defun dcl_dia6a ()
    (setq dcl_id (load_dialog "dia6a"))
    (new_dialog "dia6a" dcl_id)
    (set_tile "tg_attdia" (itoa (getvar "attdia")))
    (set_tile "tg_dispsilh" (itoa (getvar "dispsilh")))
    (set_tile "tg_textfill" (itoa (getvar "textfill")))
    (set_tile "tg_fillmode" (itoa (getvar "textfill")))
    (set_tile "tg_logfilemode" (itoa (getvar "logfilemode")))
    (set_tile "logfilename" (getvar "logfilename"))
    (action_tile "accept" "(ok_dia6a) (done_dialog 1)")
    (action_tile "cancel" "(cancel_dia6a) (done_dialog 1)")
    (setq dd (start_dialog))
)
(defun ok_dia6a    ()
    (setvar "attdia" (atoi (get_tile "tg_attdia")))
    (setvar "dispsilh" (atoi (get_tile "tg_dispsilh")))
    (setvar "textfill" (atoi (get_tile "tg_textfill")))
    (setvar "fillmode" (atoi (get_tile "tg_fillmode")))
    (setvar "logfilemode" (atoi (get_tile "tg_logfilemode")))
    (setvar "logfilename" (get_tile "logfilename"))
)
(defun cancel_dia6a ()
    (alert
    "取消\n返回【-1】给(start_dialog)函数\n所以【dd】=【-1】"
    )
)

代码完。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值