1404073417 发表于 2022-2-28 21:24:54

想问下Vlisp里如何实现这个功能

本帖最后由 1404073417 于 2022-3-1 08:48 编辑

我准备做一个多层的小程序,需要一次性让用户输入每一层的楼高以及参数。比如用户在窗口里通过下拉列表选择1就是一层,然后输入一层的一些信息。再选择2,然后输入二层的一些信息,这个时候程序如何保存刚才输入的一层的信息呢?
举例:



比如我一层是900,二层是1050,三层是1100,我输入二层的时候如何让程序保存一层的900呢?


wzg356 发表于 2022-3-1 20:33:02

本帖最后由 wzg356 于 2022-3-1 20:38 编辑

搞懂dcl控件的值,点击"accept"需要输出什么
常用取值控件
popup_list或list_box控件 值"0" "1" "2" "3"......
toggle或radio_button值"0" "1"
edit_box值"输入的字符串"


定义取得控件值得函数
(defun get_keydate ()(mapcar 'get_tile(list "key1" "key2" "key4" "key5" .......)))

点击确定收集控件的值
(action_tile "accept" "(setq xxxlst(get_keydate)")

根据控件返回值取得需要的数据
(setq qqqq
      (list(nth(atoi(nth 0 xxxlst))(list "楼层1" "楼层2" 。。。。自己定))
             ;key1值"0" "1" "2"......"7" popup_list或list_box控件
            (nth(atoi(nth 1 xxxlst))(list "右" "左" 自己定));key2值"0" "1"
            (nth(atoi(nth 2 xxxlst))(list "简单" "复杂" 。。。。自己定));key4值"0" "1"......popup_list或list_box控件
            (nth 3 xxxlst);key5-edit_box的值直接使用
      )
)



菜卷鱼 发表于 2022-3-1 08:48:20

用字符串去储存,储存的时候把各楼层高度连成一个字符串,使用的时候,再把字符串分割成列表,然后第几层就是列表第几个原子
老代码,字符串分解列表等

1404073417 发表于 2022-3-1 08:49:47

菜卷鱼 发表于 2022-3-1 08:48
用字符串去储存,储存的时候把各楼层高度连成一个字符串,使用的时候,再把字符串分割成列表,然后第几层就 ...

你好,我这个是由几个单独的edit_box组成的数据输入,这该怎么办呢

1404073417 发表于 2022-3-2 10:41:06

wzg356 发表于 2022-3-1 20:33
搞懂dcl控件的值,点击"accept"需要输出什么
常用取值控件
popup_list或list_box控件 值"0" "1" "2" "3". ...

谢谢你这么用心的回答我,我已经把你回复的内容吃透了,谢谢!
页: [1]
查看完整版本: 想问下Vlisp里如何实现这个功能