或者有其他方法:某变量有一个初始值,想通过是否按下回车键,来改变它的值
标签: , ,
免责声明
本站部分文章来源于网络收集,包括本站原创及部分转贴自互连网 , 文章的版权属于原作者。如果本站中有内容侵犯了您的权利,我们将协助您及有关部门xx相关内容并查找IP记录,但我们不承担任何责任。
由于您在使用或传播中如果出现任何问题和由此造成的任何损失,本站将不承担任何责任。利用本网站的内容以及导致的任何法律争议和后果与本站无关。
未尽事宜以网站{zx1}公告和相关法律为准。
请自觉遵守上述声明。谢谢合作。
这篇文章发布于 2010年06月7日,星期一,8:46 下午,归类于 。 您可以跟踪这篇文章的评论通过 feed。
评论和Pings都被关闭。
其实不用检查是否回车,因为一般来讲,当给变量赋值时,如果直接回车其值为“nil”只要检查变量的值是否为nil就行了。
这个问题其实和你前面的帖子是一个问题。给变量却省值就是这样的。
先设定一个全局变量,将却省值赋给他,然后在进行变量的赋值操作时进行判断,如果为nil,就将前面设定的全局变量的值赋给这个变量,如果不为ni,(这里你如果想将这次输入的值作为新的却省值,从而省去下次再输入,就将这个输入的值重新赋值给全局变量)
就象这样:
(if (= a1 nil)(setq a1 a2)(setq a2 a1))
这里a1是我们需要赋值的变量,a2就是保存却省值的全局变量。
一个完整的例子:
(defun c:queshzhi ()
(setq a2 “你好”)
(prompt “n 请你输入新值,直接回车为却省值:<>
(princ a2)
(setq a1 (getstring “>))
(if (= a1 nil)(setq a1 a2)(setq a2 a1))
(princ a1)
)
如果你想每次回车都是赋给同样的却省值程序就可以简化成这样:
(defun c:queshzhi ()
(setq a1 (getstring “”n 请你输入新值,直接回车为却省值:< 你好="">“))
(if (= a1 nil)(setq a1 “你好”))
(princ a1)
)
谢谢斑竹
请看看下面的有问题吗?
(defun c:tgsj()
;
(prompt”n本程序用于特观设计中放检波点和炮点”)
(setq k nil)
(princ “n请选择: 1、检波点; 2、炮点;”)
(setq k (getstring”< 回车退出="">“))
(if (= k nil) (exit)
(progn
(setq 间距(getint”请输入间距: “))
(indie k))
)
)
(defun C:TGSJ ()
(prompt “n本程序用于特观设计中放检波点和炮点”)
(setq K NIL)
(initget “1 2 “)
(setq K (getkword “n请选择: 1、检波点 2、炮点< 回车退出="">“))
(if (= K NIL)
(exit)
(progn
(setq 间距 (getint “请输入间距: “))
(INDIE K)
)
)
)