| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1563 人关注过本帖
标题:菜鸟求助, 查询的初始值问题
只看楼主 加入收藏
braden
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-8-5
收藏
 问题点数:0 回复次数:12 
菜鸟求助, 查询的初始值问题

小弟写的一个小小的IP查询程序
text1 是输入IP
TEXT2 是结果, 地址

运行表单, 没输条件IP 地址就有数据 是表的第1个 地址

IP里 输入10.245 或者10. 结果都会指到 表的第1个地址 都没报错 输入10.2451 就报错提示无此数据

正确的IP比如 10.245.192.99 10.166.0.77

这样的

不知道怎么样修改. 让输入 10.245 这样的 没输完的 就报错

还有初始值 TEXT2 运行 为空
搜索更多相关主题的帖子: 查询 
2007-08-14 18:04
Tiger5392
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:88
帖 子:2775
专家分:2237
注 册:2006-5-17
收藏
得分:0 
楼主,是否需要稍微将问题描述清楚一些?

感言:学以致用。 博客:http://www./blog/user14/65009/index.shtml email:Tiger5392@
2007-08-14 18:24
braden
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-8-5
收藏
得分:0 
可爱的斑竹出现了.

我的查询表单 比如 就2个 一个TEXT1是 输入IP (就是查询的条件) 一个TEXT2是地址(就是查询结果)

第1个疑问 :运行表单 . TEXT2 显示的 数据表里的 第1个数据地址 我想 运行表单 TEXT1,TEXT2 应该都是空的 输入IP查询 TEXT2才有地址 不知道怎么初始TEXT2的值


第2个疑问 查询条件 比如输入 10.245.192.5 结果是 北京 输入10.245.192.14 是湖北
输入 10.245 结果还是北京 输入10. 结果也是北京
输入10.2451 结果才报错

我的原意 是 输入 10.245. 应该报错的 不知道怎么改 输入完整的IP才应该有结果







2007-08-14 18:34
Tiger5392
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:88
帖 子:2775
专家分:2237
注 册:2006-5-17
收藏
得分:0 
你哪里是在提问题,你简直就是让别人帮你做一个系统出来。
(1)第一个疑问的解答:你只需要在建立一个表单,添加2个标签,2个文本框,2个命令按钮,并布局好,就解决了。
(2)第二个疑问的解答:假设(只能假设)你有一个表,有2个字段:IP和ADDRESS分别是IP地址及对应的实际地址名称。你只要在Text1的InterActiveChange里写代码即可
Select 表
Locate For IP=Alltrim(ThisForm.Text1.Value)
If Eof()
MessageBox('IP地址错')
Else
ThisForm.Text2.Value=address
EdnIf

感言:学以致用。 博客:http://www./blog/user14/65009/index.shtml email:Tiger5392@
2007-08-14 18:49
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
第一个问题会不会是楼主给控件赋了值?

第二个问题请在查询中用两个等号"=="来进行比较试试.

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2007-08-14 18:52
braden
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-8-5
收藏
得分:0 
555 斑竹误会我了. 很多东西不熟

这个是我的 查询码 , 我有自己写
if len(alltrim(thisform.text1.value))=0
messagebox("对不起,请输入要查询的数据!",0+16+0,"查询失败")
else
locate for 视图4.ip_num=alltrim(thisform.text1.value)
thisform.refresh
if not found()
messagebox("对不起,没有找到您输入的数据!!",0+16+0,"查询失败")
endif
endif
thisform.refresh

还有第1个问题 text2 的 contrlsource 是 视图4ip_dd 运行表单,text2还是默认出现数据源的第1个地址 我想让 它 和 text1 运行都为空的

第2个问题, 条件IP都输入完整, 比如输 10.245 或者10. 结果都是显示第1个地址

只有 输入10.24511 之类的 才报错
2007-08-14 19:08
braden
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-8-5
收藏
得分:0 
第2个问题我已搞定.

2楼说的差不多 不过 加 == 2个等于 咋都差不多了

在主程序加了条 就可以 解决第2个疑问了
2007-08-14 20:23
啸凡
Rank: 8Rank: 8
等 级:贵宾
威 望:45
帖 子:1356
专家分:885
注 册:2006-2-22
收藏
得分:0 
晕死,几个帖子一个标点符号都没有。
“2楼说的差不多 不过 加 == 2个等于 咋都差不多了”??可见您还没有认真研究VFP的基础问题。
操作符 = 在两个相同类型的值之间进行比较。这个操作符适用于比较字符、数值、日期和逻辑数据。但是,当使用操作符 = 比较两个字符表达式时,比较结果可能与预期的不完全相同。字符表达式比较时是从左到右逐个字符进行比较,一直到两个表达式中的对应字符不相等,或者到达操作符右端表达式的末端 (SET EXACT OFF),或者到达两个表达式的末端 (SET EXACT ON)。
当需要两个完全相同的字符数据时可以使用操作符 ==。如果两个字符表达式使用操作符 == 进行比较时,操作符两边的表达式必须包含完全一样的字符(包括空格),才认为是相等的。使用操作符 == 进行字符串比较时忽略 SET EXACT 设置。

两人行已有我师……
2007-08-15 08:18
啸凡
Rank: 8Rank: 8
等 级:贵宾
威 望:45
帖 子:1356
专家分:885
注 册:2006-2-22
收藏
得分:0 
楼主果然是给控件赋了值,而且是字段绑定,在这种情况下,TEXT2的值当然不会空。运行的时候,指针默认指向第一个记录,所以就出现数据源的第一个地址。
if len(alltrim(thisform.text1.value))=0只是规定了没输入数据或者仅输入空格时无效,其他情况并不报错。


两人行已有我师……
2007-08-15 08:31
braden
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-8-5
收藏
得分:0 

报告斑竹.. 主程序 加了 set excat on 就搞定了.

就是斑竹说的,给控件赋了值,而且是字段绑定, 这个该怎么改, 能大致说下吗

小弟才学VF1个月不到,就看着一本书学的,那书没教代码之类的,书名(入门与提高)

2007-08-15 08:57
快速回复:菜鸟求助, 查询的初始值问题
数据加载中...
 
   



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

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