找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 980|回复: 5

[求助] [求助]:[0417]initget命令连结程序问题?

[复制链接]
发表于 2006-4-17 11:30:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
[求助]:[0417]initget命令连结程序问题?
;;;+++++++++++++++++++++++++++++++
问题程序如下:
(setq gs (getvar "users2"))
(initget "1 2 3")
(setq ph (getkword (strcat "\n (1)程序A/(2)程序B/(3)程序C:<"gs">:" ) ) )
(setvar "users2" ph )

(cond
((= ph A)(c:TT001)) ;呼叫使用程序A
((= ph B)(c:TT002)) ;呼叫使用程序B
((= ph C)(c:TT003)) ;呼叫使用程序C
(t nil)
)
(princ ph)

小弟想将手边的程序整理一下,
可以使用关键字来呼叫使用,
但却发生呼叫不出来的问题,
该怎样处里呢?
另外若是想要设定按下空白键时,
是呼叫上次以记忆在其中的关键代码,
该怎样处里呢?

烦请各位高手解答一下~
谢谢~
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 10236个

财富等级: 富甲天下

发表于 2006-4-17 13:22:17 | 显示全部楼层
楼主:你initget中用的是"1","2","3"而却判断PH=A,PH=B,PH=C!这也差太多了。
应该将(= ph A)改为(= ph "1")
应该将(= ph B)改为(= ph "2")
应该将(= ph C)改为(= ph "3")
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-4-18 08:58:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
楼主说得对。。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-4-18 22:52:32 | 显示全部楼层
  1. [FONT=courier new](defun c:test ()
  2.   (setq gs (getvar "users2"))
  3.   (initget "A B C")                        ;修改
  4.   (setq
  5.     ph (getkword (strcat "\n (1)程序A/(2)程序B/(3)程序C:<" gs ">:")
  6.        )
  7.   )
  8.   (setvar "users2" ph)
  9.   (cond
  10.     ((= ph "A") (c:TT001))                ;A→"A"
  11.     ((= ph "B") (c:TT002))                ;B→"B"
  12.     ((= ph "C") (c:TT003))                ;C→"C"
  13.     (t nil)
  14.   )
  15.   (princ ph)
  16. )
  17. [/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-4-19 07:59:55 | 显示全部楼层
感谢版大的解答
另外请问 (initget "A B C ") 是否只能使用 英文呢? 不可以使用数字呢?
如  (initget "1 2 3 ")
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-4-19 08:35:45 | 显示全部楼层
使用数字也是一样的。你自己再试试。cond语句里不能少引号。因为返回的是字符串格式。
(defun c:test ()
  (setq gs (getvar "users2"))
  (initget "1 2 3")                        ;修改
  (setq
    ph (getkword (strcat "\n (1)程序A/(2)程序B/(3)程序C:<" gs ">:")
       )
  )
  (setvar "users2" ph)
  (cond
    ((= ph "1") (c:TT001))                ;A→"A"
    ((= ph "2") (c:TT002))                ;B→"B"
    ((= ph "3") (c:TT003))                ;C→"C"
    (t nil)
  )
  (princ ph)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-21 03:33 , Processed in 0.313865 second(s), 43 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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