| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 966 人关注过本帖
标题:[求助]好急啊,为什么会这样??
只看楼主 加入收藏
xbj222
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2006-2-6
收藏
 问题点数:0 回复次数:11 
[求助]好急啊,为什么会这样??
SELECT ruku
COUNT FOR 序号=thisform.text1.value TO x
thisform.Refresh
IF x>1
MESSAGEBOX("该序号已存在",48,"提示")
RETURN 0
ENDIF
thisform.Refresh

运行时为什么是个死循环??我昨天想了一天都不明白啊.为什么会这样??这代码我是放在一个文本框的vaild下面..
搜索更多相关主题的帖子: 文本框 天都 
2006-03-22 08:52
啸凡
Rank: 8Rank: 8
等 级:贵宾
威 望:45
帖 子:1356
专家分:885
注 册:2006-2-22
收藏
得分:0 

我认为是thisform.Refresh在作怪吧。表单不断刷新,那么文本框失去焦点的事件(Vaild)就不断发生。理论上分析,不一定对。
能不能考虑把代码放在文本框的InterActiveChange里。
另外,查找已存在的序号建议不用Count,改用Locat,因为Locat在找到第一个符合条件的记录后就会停下来,而Count则会对所有记录进行分析。
如果该字段是索引关键字,用Seek更快

[此贴子已经被作者于2006-3-23 16:49:54编辑过]


两人行已有我师……
2006-03-23 16:42
xbj222
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2006-2-6
收藏
得分:0 

放在interactivechang里面不行啊,该字段是索引关键字来的...用seek的话,不是查找出第一个记录吗?我的是,,比如表里有已经有序号5了,当我在文本框再输入5的时候,失去焦点的时候就提示存在,再让它重新输入..如果用locate和seek也可以,请问要怎么写呢??


我在那另外发了个更详细的贴子..序号都是数值型的...谢谢了~~


2006-03-24 08:34
xbj222
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2006-2-6
收藏
得分:0 
seek要怎么用呢?能给点代码实例吗?谢谢!

2006-03-24 10:30
liyuezb
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-3-23
收藏
得分:0 
select ruku
locate for 序号=thisform.text1.value
if found()
MESSAGEBOX("该序号已存在",48,"提示")
thisform.text1.setfocus=.t.
endif
2006-03-25 21:02
liyuezb
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-3-23
收藏
得分:0 
写错了,应该是这一句 

select ruku
locate for 序号=thisform.text1.value
if found()
MESSAGEBOX("该序号已存在",48,"提示")
thisform.text1.setfocus
endif
2006-03-25 21:07
xbj222
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2006-2-6
收藏
得分:0 
你那也不行的..在vaild事件是不能用setfocus的..我也试过,还是不行..

2006-03-27 08:15
veteran
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2006-3-19
收藏
得分:0 
valid事件中是不能用setfocus的。
可以用这个代替return 0

不过您的问题可能不在这。估计在于数据库表中存在空纪录或别的什么,改进方法:
1.设置set exac on
2.去掉空串。使用函数alltrim(序号),alltrim(thisform.text1.value)
3.用精确比较"=="
2006-03-28 08:33
xbj222
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2006-2-6
收藏
得分:0 
请问能不能使列印的时候,序号重新排列?
或者在表单中,每次查询某一项时,序号都重新排列..

2006-03-28 11:42
xbj222
Rank: 1
等 级:新手上路
帖 子:179
专家分:0
注 册:2006-2-6
收藏
得分:0 

查询的时候表格的内容会重叠在一起,请问这怎么解决?


2006-03-28 11:56
快速回复:[求助]好急啊,为什么会这样??
数据加载中...
 
   



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

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