本帖最后由 作者 于 2008-11-28 9:34:51 编辑
通过获得输入判断ascii码包括46 48-57到用户敲回车或空格为止 调用sendkey把用户的输入模拟进去 这样也可以随时修改 用户以为是自己的输入 问题解决: ;20081128 by nonsmall (defun c:test( / asc get go real return ws) (setq go T) (print "输入实数") (while (and go (setq get (grread T))) (if (and (= (car get) 2) (setq asc (cadr get)) (/= asc 47) (>= asc 46) (<= asc 57)) (progn (setq ws (vlax-Create-Object "WScript.Shell")) (setq real (getreal (car (list "" (vlax-invoke-method ws 'sendkeys (chr asc)))))) (if real (setq go nil)) ) ) ) real ) |