求助动态保存输入文字
本帖最后由 作者 于 2003-6-12 17:52:04 编辑请问那位高手,用VisualLisp开发对话框时,怎样将输入到对话框编辑栏中的字符或数字
动态的保存在下拉列表中,再次打开下拉列表时,就可以将上次输入的字符动态显示在编辑框中。
谢谢!!
如下:
做一个按钮(你用别的动作也可以),(action "add_button" "(act_add)")
其中函数act_add如下:
(defun act_add( / str)
(setq str (get_tile "edit1"))
(start_list "list1" 2)
(mapcar 'add_list (list str))
(end_list)
)
meflying 你把我的意思理解错了
本帖最后由 meflying 于 2003-6-13 11:36:11 编辑不好意思,我说的是将很多编辑框中的字符以一个名字保存,在列表框中加入这个名字,点击列表框中相应的名字,就能在相应的很多编辑框中显示对应的字符,有办法么?
不应该说理解错了,应该说只做了一半。
本帖最后由 meflying 于 2003-6-13 11:36:55 编辑是meflying,不是myflying,我擅自改了一下,哈哈。。。
主要是教给你思路,看了上面的方法,反过来从列表框到编辑框也一样,你应该能琢磨出来。
两个action_tile动作如下:
(action_tile "add" "(setq l_str (act_add l_str))")
(action_tile "list1" "(act_list l_str)")
注意,使用前一定要将l_str清空。
两个动作函数如下,注意,第一个与原来的稍有修改,看看是不是符合你的意思
(defun act_add(l_str)
(setq l_str (append l_str (list (get_tile "edit1"))))
(start_list "list1" 3)
(mapcar 'add_list l_str)
(end_list)
(mode_tile "edit1" 2)
(mode_tile "edit1" 3)
l_str
)
(defun act_list(l_str)
(setq n (atoi (get_tile "list1")))
(set_tile "edit1" (nth n l_str))
)
还有问题问meflying
本帖最后由 作者 于 2003-6-13 12:23:56 编辑上次实在不好意思!
我的意思是让用户多次输入到多个编辑框中的数据,可以在保存在lisp程序之中,并以不同的名字加入到列表中,在以后的操作中,用户可以不必输入上次的数据,直接在列表中选择就可以获得相应的数据,这样的问题应该怎样解决呢?
不好意思,再次麻烦你了
还希望说具体点
能不能说说具体操作过程,比如说我在编辑框输入字符串“ABC”,在列表框中要存成什么呢?其实实现方法我都给你了,怎样在列表框中加入编辑框的输入,又怎样保存在变量中,在函数里都有,单个编辑框实现了,多个不一样吗,只要组织一下代码,很容易实现的。
如果你不愿意弄懂了自己动手做的话,就把你的具体要求说出来(不是实现过程,要包括输入什么,怎样动作,输出什么),
请问
再请问meflying
意思是这样,我写了一个画鞋底图形的lisp程序,对于常见的鞋底类型,可以在列表中选择常见鞋底名字(没有new1,new2),同时被选择名字的鞋底参数显示相应在几个编辑框中,按确定键后便可划出相对应的图形。但列表中的鞋底类型的名字个数有限,用户如果想画一个列表中没有的鞋底图形(即不常见的),就需要在表示鞋底参数的编辑框中输入相应参数值,按确定键也可划出相应图形。
为了方便下次操作,储存用户输入信息,我想把用户输入!!到编辑框中的各个不常见鞋底的参数(至少30个数字参数),起个名字(随便都可以如new1,new2),加入到列表中,同时参数也可以动态存贮到lisp程序中去,下次操作时可以直接从列表中选择new1或new2,不用在编辑框中输入便可直接划出相应的鞋底图形。
不知道这次你能不能懂我的意思!!
不好意思再次麻烦你!
明白了
我先做着,还有几个问题,内容不能存在程序中,除非你一直运行这个程序,你可以把它存到文件中,下次运行时先调用标准参数,如果需要再调用原来存的文件取出上次存的非标准的东西,或者再次存入新参数。这样可以吗?还是要下次直接就调出上次存的东西?
求助meflying
谢谢你,我希望是下次或以后可以直接从列表中,利用上次自己起的新名子调出相应数据信息,不知能不能?我可能有点胡想了,请见谅!