明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1099|回复: 8

文本输入框

[复制链接]
发表于 2023-3-7 20:23 | 显示全部楼层 |阅读模式
本帖最后由 wosiguwozai0830 于 2023-3-7 20:25 编辑

  • ;文本输入框
  • (defun inputbox(msg / res dcl_id )
  •   (setq res "")
  •   (setq dcl_id(fy_DclWrite
  •                 (list "tywbk:dialog{"
  •                    (strcat "label=\""  msg "\";" )
  •                    ":edit_box{label=\"输入:\";key=\"tywbk_wb\";edit_limit=100;edit_width=60;fixed_width=true;allow_accept=true;}"
  •                    ":row{"
  •                    ":ok_button{label=\"确定\";key=\"tywbk_ok\";}"
  •                    ":cancel_button{label=\"关闭\";}"
  •                    "}"
  •                    "}"
  •                  )
  •               ))
  •   (new_dialog "tywbk" dcl_id)
  •   (action_tile "tywbk_ok" "(setq res(get_tile \"tywbk_wb\" ))(DONE_DIALOG)")
  •   (action_tile "cancel" "(setq res \"\")")
  •   (start_dialog)
  •   (unload_dialog dcl_id)
  •   res
  • )
  • ;来源于明经论坛,临时生成Dcl文件,返回dcl_id  ;by nonsmall
  • (defun fy_DclWrite (lst / dcl_file file str dcl_id dcl-name)         
  •   (vl-load-com)
  •   (setq dcl_file (vl-filename-mktemp nil nil ".dcl"))
  •   (setq file (open dcl_file "w"))
  •   (foreach str lst (write-line str file))
  •   (close file)
  •   (setq dcl_id (load_dialog dcl_file)) ;对话框加载
  •   (vl-file-delete dcl_file) ;加载后删除dcl文件
  •   ;(setq dcl-name (substr (car lst) 1 (vl-string-search ":dialog" (car lst))))
  •   ;(new_dialog dcl-name dcl_id)
  •   dcl_id
  • )
  • ;使用(setq a1(inputbox "输入文本"))

本帖子中包含更多资源

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

x

评分

参与人数 2明经币 +2 收起 理由
start4444 + 1 赞一个!
guosheyang + 1 赞一个!

查看全部评分

发表于 2023-3-8 09:46 | 显示全部楼层
如果可能,最好是把这些常规简单输入框,全部写出来,作为标准函数库。
我之前是把doslib中那些主要的UI函数写了一个对应的lisp/dcl版本。后续写具体功能程序时只需要调用即可。这些函数与doslib函数可以对应替换,这样在AutoCAD for Mac 中因为没有doslib库可用时,就使用lisp/dcl版本的函数。
发表于 2023-3-8 14:01 | 显示全部楼层
一个InputBox解决的事儿,lisp真费劲
发表于 2023-3-9 12:02 | 显示全部楼层
感谢楼主分享
发表于 2023-3-9 13:53 | 显示全部楼层
感谢大佬分享
 楼主| 发表于 2023-3-9 15:07 | 显示全部楼层

命令行输入,涉及中英文转换时,容易出错,直接就跳到下一行,用文本输入框能避免这个问题
发表于 2023-3-10 12:56 | 显示全部楼层
感谢楼主分享
发表于 2023-3-25 09:41 | 显示全部楼层
研究下,不知道有没有多参数的写法,很实用
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-19 10:15 , Processed in 0.296381 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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