如何控制DCL中编辑框输入内容?
如何控制DCL中编辑框输入内容,比如只能为数字? lsp中設定,dcl只是構架 如何在用户输入数据错误时给予提示,我用ALERT,但点击确定后,程序就退出了,怎么让确定后,返回原对话框? SWAYWOOD发表于2004-5-15 13:07:00static/image/common/back.gif如何在用户输入数据错误时给予提示,我用ALERT,但点击确定后,程序就退出了,怎么让确定后,返回原对话框?你应该在"Exit"按钮的动作函数中先判断editbox控件的值是否是有效的,如果无效,则给出提示(通常是设置error控件的值为"Error....."),而不是退出对话框 不太明白,能否给个例子? 清高手帮帮忙! test1: dialog {<BR> : edit_box {key = "input"; width = 8;}<BR> ok_cancel;<BR> }
(defun c:test1(/ dcl_id)<BR> (setq dcl_id (load_dialog "test1.dcl"))<BR> (if (null (new_dialog "test1" dcl_id)) (exit))<BR> (action_tile "accept" "(if (not (nump (setq input (get_tile \"input\"))))(alert \"不是数字!\")(done_dialog 1))")<BR> (start_dialog)<BR> (unload_dialog dcl_id)<BR> (princ)<BR>)<BR>(defun nump(str)<BR> (if (member (type (read str)) (list 'INT 'REAL))<BR> t<BR> nil<BR> )<BR>) 谢谢,看看先 为什么ALERT嵌套在action_tile中就不会退出程序,而要是在主程序中就会退出呢? 看来你对对话框的运行过程还基本不熟, 建议你多琢磨琢磨先
页:
[1]