明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3029|回复: 11

在编辑框中修改数据,按回车键能修改数据,但按"取消"按钮时却不能取消修

  [复制链接]
发表于 2003-11-17 11:05:00 | 显示全部楼层 |阅读模式
本帖最后由 作者 于 2003-11-18 14:11:13 编辑

在编辑框中修改数据,按回车键能修改数据,但按"取消"按钮时却不能取消修改.不会是死结吧?请高手解结。[br]我想在编辑框中输入数据后直接按回车键就能接受数据并退出对话框,这样操作起来更方便.但却发现按"取消"按钮时还是接受数据.原来是编辑框的回调起作用后已经退出了对话框,所以按回车,确定,取消时效果都一样,全部是接受数据.如何才能达到按回车或确定时能修改数据而按取消时不修改数据?

本帖子中包含更多资源

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

x
发表于 2003-11-17 11:43:00 | 显示全部楼层

你可將變量“ns"設成"done_dialog 1"里面的動作.

 楼主| 发表于 2003-11-17 14:13:00 | 显示全部楼层
能将改后的程序贴出来吗?
发表于 2003-11-18 11:22:00 | 显示全部楼层

程序如下:

发表于 2003-11-18 11:25:00 | 显示全部楼层
沒有
发表于 2003-11-18 11:34:00 | 显示全部楼层

sorry,剛才沒偉上去.

发表于 2003-11-18 11:36:00 | 显示全部楼层

奇怪,我現在沒辦法上傳文件!!

发表于 2003-11-18 11:43:00 | 显示全部楼层

程序如下:

本帖子中包含更多资源

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

x
 楼主| 发表于 2003-11-18 12:15:00 | 显示全部楼层
本帖最后由 作者 于 2003-11-18 12:50:51 编辑

还是不能满足要求。我要求在编辑框中数据输入完后,焦点还在编辑框时直接按回车键就接受数据,并退出对话框,而不是使用鼠标来按“确定”。我原来的程序能达到这个要求,但却产生了负作用,就是当用鼠标按“取消”按钮时还是接受了数据,我的本意是不接受数据。ns的值是无所谓的,关键是对话框退出后是否处理这个值所引起的作用。怪我没表达清楚。

(defun c:bb (/ dli ns rr)

  (setq dli (load_dialog "mytest.dcl"))
  (if (null (new_dialog "mydcl" dli))
    (exit)
  )
  (set_tile "tt" "5566")
  (mode_tile "tt" 2)

  ;(action_tile "tt" "(setq ns $value)")  
  (action_tile "tt" "(setq ns $value) (done_dialog 1)");数据输入完后回车能接受数据

  (setq rr (start_dialog))

  (if (= rr 1)
    (progn
      (alert "已接受新数据!")
      ;在这里处理变量ns对程序的影响
      (if (= ns "8899")
        (princ "How are you")
        (princ "It is fine")
      )
    )
    (progn
      (alert "没有接受新数据!")
      ;在这里对ns的值不作处理,不管它是不是原来的值
    )
  )
  (unload_dialog dli)
  (princ)
)
发表于 2003-11-18 12:30:00 | 显示全部楼层

那你可以用變量傳遞的方式達到。如:(setq oldns $value),到最后用:(setq ns oldns

那你可以用變量傳遞的方式達到。如:(setq oldns $value),到最后用setq ns oldns).[br]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-10-2 10:26 , Processed in 0.192752 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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