主题:怎样在TEXT里输入的值下次运行里时那值还在
豚海gg
[专家分:0] 发布于 2009-07-20 15:50:00
你们好!请教了个问题?我使用VFP中的表单编了个计算类的程序,每回重新打开程序,以前输入在TEXT里的数值都被自动清空了,这样每次都要重新输一回,有点麻烦,能不能把那值保存下来,那样等下回重新打开程序就不用重新输入.谢谢各位了
回复列表 (共19个回复)
11 楼
豚海gg [专家分:0] 发布于 2009-07-29 16:43:00
在表单中怎样生成内存变量啊?
12 楼
豚海gg [专家分:0] 发布于 2009-07-30 21:48:00
6楼说的变量文件名怎么没有呢?是怎么弄的?
13 楼
homayzh [专家分:7040] 发布于 2009-07-31 12:12:00
我给你说个好办法
如果你的数据类型是 C
在表单的init里输入:
*-在c:\temp.txt里读数据输入到text1里
thisform.text1.value = filetostr('c:\temp.txt')
在你表单的建出按钮中输入一个
把text1的值保存到c:\temp.txt文件里
strtofile(thisform.text1.value,'c:\temp.txt')
14 楼
豚海gg [专家分:0] 发布于 2009-08-02 12:37:00
可我的数据类型是数值型,那怎么弄?
15 楼
homayzh [专家分:7040] 发布于 2009-08-02 14:13:00
也好办
表单的 Init 里输入
thisform.text1.value = val(filetostr('c:\temp.txt'))
在表单的退出之前运行
strtofile(allt(str(thisform.text1.value),14,2),'c:\temp.txt')
16 楼
homayzh [专家分:7040] 发布于 2009-08-02 14:13:00
转换成C型。完了再转换回来就OK了
这里主要用到了,strtofile()和filetostr()两个函数,你看看关于这两个函数的帮助
17 楼
sywzs [专家分:5650] 发布于 2009-08-03 13:55:00
[quote]6楼说的变量文件名怎么没有呢?是怎么弄的?[/quote]
表单中至少包含 text1、text2 两个文本框
在表单的 INIT 事件中加入下面的代码
SET SAFETY OFF
IF FILE("AA.MEM")
RESTORE FROM AA ADDITIVE
this.text1.Value=Txt1
this.text2.Value=Txt2
ENDIF
在表单的 DESTROY 事件中加入下面的代码
Txt1=thisform.text1.Text
Txt2=thisform.text2.Text
SAVE TO AA ALL LIKE Txt*
18 楼
豚海gg [专家分:0] 发布于 2009-08-04 19:24:00
按17楼说的,确实是能保存text控件里的值,但是运行程序时,就出现问题了.
例如我有两个文本框,text1,text2,我把text1的controlsourcr属性设为z,把text2的controlsourcr属性设为m,当运行程序后,按计算按纽,程序跳出来说找不到变量z ,这样就不能进行计算了.但如果在运行程序后,我先把text1,text2里的值重新输一下,然后按计算按纽,就不会跳出来说找不到变量z,但这样的话,就等于没保存了.
19 楼
sywzs [专家分:5650] 发布于 2009-08-05 05:17:00
计算时取 Text1.text、 Text2.text,而不是取 Text1.value、 Text2.value。
我来回复