| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3193 人关注过本帖
标题:是不是VFP 9 在win7存在未知问题啊?这么简单的代码我都找不到问题原因。
只看楼主 加入收藏
琅拿度
Rank: 1
等 级:新手上路
帖 子:166
专家分:5
注 册:2016-4-7
结帖率:75.86%
收藏
已结贴  问题点数:4 回复次数:27 
是不是VFP 9 在win7存在未知问题啊?这么简单的代码我都找不到问题原因。

需要在工作区1~5打开表 A1~A5,但是我验证并不成功,验证代码

For i=1 To 5
    ic=Alltrim(Str(i))
    Select i
    a&ic='a'+ic+'.dbf'
    Use (a&ic) In i
Endfor
For i=1 To 5
    Select i
    Messagebox(Dbf(i))
Endfor
搜索更多相关主题的帖子: 工作区 
2016-04-20 15:44
琅拿度
Rank: 1
等 级:新手上路
帖 子:166
专家分:5
注 册:2016-4-7
收藏
得分:0 
Messagebox(Dbf(i))返回的都是空白
Messagebox(Dbf())返回的都是“a5”

哪里有问题?
2016-04-20 15:47
aaaaaa
Rank: 8Rank: 8
等 级:贵宾
威 望:21
帖 子:796
专家分:937
注 册:2012-9-4
收藏
得分:0 
Clear
Close Databases
For I = 1 To 5
    ic = Transform(I)
    lcDBF = "a" + ic + ".DBF"
    ? lcDBF
    Use &lcDBF In 0
Endfor
For I = 1 To 5
    Select I
    ? Dbf(I)
Endfor
? "Finish."

民工子弟学校22班团小组长阳光模特队长冲锋篮球队前锋小苹果合唱队领唱蓝天舞蹈队编舞
2016-04-20 16:18
琅拿度
Rank: 1
等 级:新手上路
帖 子:166
专家分:5
注 册:2016-4-7
收藏
得分:0 
你的方法,是可以,但是可以说说我写的错在哪里吗?
2016-04-20 16:29
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9848
专家分:27241
注 册:2012-2-5
收藏
得分:0 
For i=1 To 5
    Select i
    a='a'+Alltrim(Str(i))+'.dbf'
    Use (a) In i
    Messagebox(Dbf(i))
Endfor

坚守VFP最后的阵地
2016-04-20 16:34
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9848
专家分:27241
注 册:2012-2-5
收藏
得分:0 
For i=1 To 5
    Select i
    a='a'+padl(i,1)+'.dbf'
    Use (a) In i
    Messagebox(Dbf(i))
Endfor

坚守VFP最后的阵地
2016-04-20 16:37
琅拿度
Rank: 1
等 级:新手上路
帖 子:166
专家分:5
注 册:2016-4-7
收藏
得分:0 
以下是引用sdta在2016-4-20 16:34:58的发言:

For i=1 To 5
    Select i
    a='a'+Alltrim(Str(i))+'.dbf'
    Use (a) In i
    Messagebox(Dbf(i))
Endfor


你的返回还是空白,不知道怎么回事,“in i”就会出问题,如果改成“i 0”就ok了,难道这个in 后面不能用变量吗?
2016-04-20 16:38
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9848
专家分:27241
注 册:2012-2-5
收藏
得分:0 
没有测试数据,自己慢慢研究吧

坚守VFP最后的阵地
2016-04-20 16:44
aaaaaa
Rank: 8Rank: 8
等 级:贵宾
威 望:21
帖 子:796
专家分:937
注 册:2012-9-4
收藏
得分:0 
I 是保留字,A-J 都是保留字,比如:
Select 9 等同于 Select I
Use XXX.Dbf In I
这时候的 I 是既是保留字,又是变量,保留字有优先权。
你都在 9 工作区了打开 DBF 文件,后一个文件的打开,关闭了前一个已打开的文件。
是不是这个道理?

或者你要强调 I 是变量,这么改:
Use (a) In m.I

或者循环变量不要用 I,改用 II,或其他没有冲突的字符。

试试看

民工子弟学校22班团小组长阳光模特队长冲锋篮球队前锋小苹果合唱队领唱蓝天舞蹈队编舞
2016-04-20 16:52
琅拿度
Rank: 1
等 级:新手上路
帖 子:166
专家分:5
注 册:2016-4-7
收藏
得分:0 
但是如果只能用 in 0 的话,那如果我想在特定的工作区打开某个表就不行罗?
2016-04-20 16:52
快速回复:是不是VFP 9 在win7存在未知问题啊?这么简单的代码我都找不到问题原因 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017527 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved