找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1565|回复: 4

[发布] 仿照Dos_Getstring写的一个 Getstring

[复制链接]

已领礼包: 593个

财富等级: 财运亨通

发表于 2014-1-7 08:30:25 | 显示全部楼层 |阅读模式

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

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

×
昨天受一个朋友启发,模仿DOSLIB尝试写了一个ODCL的UI界面
  1. ;|
  2. Style Description
  3. 0 Non-control characters (or custom filter)
  4. 1 AutoCAD angle units only
  5. 2 Signed integers only
  6. 3 AutoCAD distance units only (affected by DIMZIN system variable)
  7. 4 AutoCAD symbol table names only
  8. 5 Upper case only
  9. 6 Lower case only
  10. 7 Password (hides input text)
  11. 8 All characters allowed (including [Enter])
  12. |;
  13. (defun XD::Odcl:Getstring (Title
  14.                            Protxt
  15.                            mod
  16.                            filter
  17.                            /
  18.                            c:GetString_Getstring_OnCancel
  19.                            c:GetString_Getstring_OnCancelClose
  20.                            c:GetString_Getstring_OnClose
  21.                            c:GetString_Getstring_OnOK
  22.                            c:GetString_Getstring_Input_OnEditChanged
  23.                            c:GetString_Getstring_Input_OnReturnPressed
  24.                            c:GetString_GetString_OnInitialize
  25.                            str
  26.                            string
  27.                           )
  28.   (defun c:GetString_GetString_OnInitialize (/)
  29.     (dcl_Control_SetTitleBar getstring_getstring Title)
  30.     (dcl_control_setcaption getstring_getstring_label protxt)
  31.     (dcl_Control_SetFilterStyle GetString_GetString_Input mod)
  32.     (dcl_TextBox_SetFilter GetString_GetString_Input Filter)
  33.   )
  34.   (defun c:GetString_Getstring_OnCancel        (/)
  35.     (dcl_form_close getstring_getstring)
  36.   )
  37.   (defun c:GetString_Getstring_OnCancelClose (Reason /)
  38.     (dcl_form_close getstring_getstring)
  39.   )
  40.   (defun c:GetString_Getstring_OnClose (UpperLeftX UpperLeftY /)
  41.     (dcl_form_close getstring_getstring)
  42.   )
  43.   (defun c:GetString_Getstring_OnOK (/)
  44.     (setq str (dcl_control_gettext getstring_getstring_input))
  45.   )
  46.   (defun c:GetString_Getstring_Input_OnEditChanged (NewValue /)
  47.     (dcl_control_setenabled getstring_getstring_Ok t)
  48.   )
  49.   (defun c:GetString_Getstring_Input_OnReturnPressed (/)
  50.     (setq str (dcl_control_gettext getstring_getstring_input))
  51.     (dcl_form_close getstring_getstring)
  52.   )
  53.   (defun c:GetString_Getstring_Cancel_OnClicked        (/)
  54.     (setq str (dcl_control_gettext getstring_getstring_input))
  55.     (dcl_form_close getstring_getstring)
  56.   )
  57.   (defun c:GetString_GetString_OK_OnClicked (/)
  58.     (setq str (dcl_control_gettext getstring_getstring_input))
  59.     (dcl_form_close getstring_getstring)
  60.   )
  61.   (setq        string
  62.          (apply
  63.            'strcat
  64.            '("YWt6A9kRAAAovLWyBuKTKbMxbT9qgVM8Z3ovN/K4ev384S7SViZKTzhKOH/1Dq46bdub1Sz09FaP"
  65.              "vC9skWCqQT87bUFs8QTv5VkxYELkVpS3ZkHWkbPo46OppMzX+BaSGAmZSY2YswURoJGTCgcUUPuK"
  66.              "Iwhmg8b6YMRRXPBaeB9/Bid06q/lO5Tkbzhyxa/yKMQcdhxZ31bL/aY7qX7zeYs2djOq9O+0WMQE"
  67.              "rzwdTxSLrza2IEy7ZIUWiP7gZVtnqM39pMgQAI2y3iBfMtV4FxBRyzwK+ddJOoQkNshpW1YZ2xJP"
  68.              "VzAfS+r7XNoBp6MtUS5LUe9oK6NW+JXZWMs0gwU1BKsTeqyuXNvLT5I/2JxNJ4VcihBdLe1EUncU"
  69.              "WU70TxTVYWDTlXSv1FAFCiuFqZsmKxsCQbfPBpOvcgu7/UmGI5d2ow+U8+2LdwQgm0vh5ksLgmF3"
  70.              "giae+XwBjabKqNEzb8o9M3ZBfehpAUlHvPXVFVYLbPMN2qjtBi6xVkXzRqryZqEcAiY9XUTvB7sM"
  71.              "kKdZbcf6nQhgnRoFyHpQ/Az8zyNmZGym66Ihp44cuS4FQhy4FWbp9j6iaRoHXg7bWe4lgxL4D6yg"
  72.              "5j26CjDoSHKXGmHaRwMuibooo2sG144G248uJeaK+sjc7dLW3wU2LVc/k/2K2jQPsK8dEZ/Wvl0w"
  73.              "2tIxYrcfT+Buhtf3klK1+TuaGrQq9+PGX4LUaQAz90Y6e0BfjlTd4a05C2fC/FzaZHqz/HwhaYSE"
  74.              "e6BYggVQjlPxAgNf56zTG7g3XPdQBIgtT2XNzZvGjozKzgzDXhjd74FMN4wNGGkLqkH2I+MLmKWE"
  75.              "oHcDYTPoFoeJMJ/OD+Pmwa8rZgaC5r+FZ3F2haW70Ap2oleOL/8lu9C2PMsnGuPVDteHvMv6PnuJ"
  76.              "Sra8K9r1FeDsm1RH4q9Univv4sYHVN1yK2qMYxQJA4mcinNjyC1bIRflaN+xKfaQgsROFwMB3m4D"
  77.              "IDZftC8WCrS3PJ1Uam+1JVYY7ttuxlYJf/U138OOLNbkD9/q/5vz8XG0jue037JMkLfeMr4NzFXy"
  78.              "RNEE2DiMLhntYZTGMyUSdJeugPtq5Ghq9F1J+4bxpgF054cZ79husdaa4LjynQx5mxcKP3rsgYv0"
  79.              "u9+0O859tl4mmI/GfIDwtYF0X5qfSHk/BrFMcNGHcN1HdmzMaOlepCBpP8SOZXac/W4RrJHhnBA2"
  80.              "ZA=="
  81.             )
  82.          )
  83.   )
  84.   (dcl_project_import string)
  85.   (dcl_form_show getstring_getstring)
  86.   str
  87. )

_$ (XD::ODCL:Getstring "XDCAD" "输入整数" 0 "0123456789")
"123232141"
_$
getstring.jpg
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 1757个

财富等级: 堆金积玉

发表于 2014-1-7 09:55:17 | 显示全部楼层
:lol E大真有效率啊
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2014-1-7 11:48:46 | 显示全部楼层
本帖最后由 st788796 于 2014-1-7 12:23 编辑

这样思路不错,可以把界面单独拿出来写成函数,Ok 后返回各个控件的值,自己再写后面的应用
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 202个

财富等级: 日进斗金

发表于 2020-2-18 10:50:35 | 显示全部楼层
非常好的思路,学习下
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 8611个

财富等级: 富甲天下

发表于 2020-2-18 15:10:18 | 显示全部楼层
与Dos_Getstring相比,除了不能有缺省字符串,其它的都很完美。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-24 06:14 , Processed in 0.373375 second(s), 38 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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