[求助]对话框数据类型的问题
<P>;titi.lsp</P><P>(defun xd-SSMAP (func ss / n)<BR> (if (eq 'PICKSET (type ss))<BR> (repeat (setq n (fix (sslength ss))) ; fixed<BR> (apply func (list (ssname ss (setq n (1- n)))))<BR> )<BR> )<BR>)</P>
<P><BR>(defun loaddlg()<BR> (setq dcl_id (load_dialog"jisuan.dcl"))<BR> (if (not(new_dialog "jisuan" dcl_id)) (exit) )<BR> (mode_tile "kkuan" 2)<BR> <BR> <BR> (action_tile "accept" "(setto2)(done_dialog)")<BR> <BR> (start_dialog)<BR> (unload_dialog dcl_id)<BR>)</P>
<P>(defun setto2()</P>
<P> (setq kk (atof (get_tile "kkuan"))) <BR> (setq hh (atof (get_tile "ggao")))<BR> <BR>)</P>
<P>;;求选择集的线长度<BR>(defun c:tt (/ ss d kk hh)<BR> (vl-load-com)<BR> (loaddlg)<BR> (setq d 0.)<BR> (if (setq ss (ssget))<BR> (xd-ssmap '(lambda (e)<BR> (setq d<BR> (+ d<BR> (vlax-curve-getdistatparam e (vlax-curve-getendparam e))<BR> )<BR> )<BR> )<BR> ss<BR> )<BR> )</P>
<P> (setq d (* d kk))<BR> (setq d (* d hh))<BR> (princ "\n所选体积 = ")<BR> (princ d)<BR> (princ)<BR>)</P>
<P>这段代码在对话框中取得数据进行计算,get_tile得到的是字符串吧,我用atof转化成实型数据,但是还是说参数类型错误如下:</P>
<P>错误: 参数类型错误: stringp nil</P>
<P>各位能不能帮帮忙解决一下 </P> 这行错了(setq d 0.);???<BR>
页:
[1]