明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2307|回复: 11

[求助]能输数字和字符的代码

  [复制链接]
发表于 2009-10-2 12:04:00 | 显示全部楼层 |阅读模式

在写一段文字求高程序, 下面的代码中,为什么输入数字进去,enp返回一直是nil呀,请问要怎样写这段话呀

 (setq s0 (strcat "\n >A=FileName<;>B=FilePath<;>输入数字=文字高度<"    ))
  (initget "A B a b  ")
  (setq enp (entsel s0))
  (if (= enp nil)(setq s 3)
                  (setq s (abs enp)))

"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2009-10-2 22:33:00 | 显示全部楼层
entsel 在使用initget时不支持任意输入数字。如果输入数字,CAD将按鼠标移动方向寻找实体。该位置有实体则返回该实体;无实体返回nil。
发表于 2009-10-3 01:23:00 | 显示全部楼层

可以用getpoint

再 nentselp

 楼主| 发表于 2009-10-5 00:44:00 | 显示全部楼层
按照狂刀无痕的代码,得到的是坐标系,如何求出用户输入的值,求大侠再指点一下!
 楼主| 发表于 2009-10-5 01:24:00 | 显示全部楼层

如何让程序分辨用户输入的到底是数字还是字符呢??????头大了!

用getstring可以同时输入数字与字符,但是下面的语句却不能限制用户输入除数字与A B a b以外的字符,getstring也不能用!

  (initget "A B a b  ")
  (setq enp (getstring  s0))

发表于 2009-10-5 09:03:00 | 显示全部楼层
(SETQ NO1 (UREAL 7 "" "字高" NO1))
明经网友  发表于 2009-10-5 09:33:00

xyp1964斑主的代碼只能輸數字﹐我需要的是一段能一次同時輸入數字和字母的代碼(initget "A B a b  ")

回复 支持 反对

使用道具

 楼主| 发表于 2009-10-5 09:35:00 | 显示全部楼层
xyp1964版主的代碼只能輸數字﹐我需要的一段代碼是能同時輸入數字和字母的代碼 (initget "A B a b  ")
发表于 2009-10-5 12:12:00 | 显示全部楼层
(defun C:TT (/ ENP FLAG)
  (setq FLAG t)
  (while FLAG
    (cond
      ((= (progn (initget 128)
   (setq ENP
   (getpoint
     (strcat "\n FileName<A>/FilePath<B>/文字高度<輸入數字>: "
     )
   )
   )
   )
   NIL
       )
       (setq FLAG t)
      )
      ((wcmatch (substr ENP 1 1) "[0-9]")
       (setq ENP  (atof ENP)
      FLAG NIL
       )
      )
      ((wcmatch (setq ENP (strcase (substr ENP 1 1))) "[AaBb]")
       (setq FLAG NIL)
      )
    )
  )
  ENP
)

评分

参与人数 1明经币 +1 收起 理由
mccad + 1 【好评】好程序

查看全部评分

 楼主| 发表于 2009-10-5 18:30:00 | 显示全部楼层
龍哥厲害﹐愛死你了﹐謝謝﹗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-6 07:06 , Processed in 0.210250 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表