pb中如何判断在sle_1中录入的是数字还是字母?

[复制链接]
查看11 | 回复4 | 2011-9-8 10:10:02 | 显示全部楼层 |阅读模式
因为在一个find语句中,有一个字段(bigint型)要等于sle_1中录入的值,当录入字母就会报错说表达式有错误,录入数字是正常的,怎么解决这个问题?
回复

使用道具 举报

千问 | 2011-9-8 10:10:02 | 显示全部楼层
先isnumber(sle_1.text)还要是整数如果是整数的话再find
回复

使用道具 举报

千问 | 2011-9-8 10:10:02 | 显示全部楼层
用EditMask控件能限定输入的字符类型,可以专门是数字如果用sle_1需要写代码判断,没有EditMask这个方便(EditMask是现成的)你可以试一试EditMask,如果不符合你实际要求,那只能在sle的modified事件里面写代码判断了
回复

使用道具 举报

千问 | 2011-9-8 10:10:02 | 显示全部楼层
判断ASCII码值哦,128是汉字。
回复

使用道具 举报

千问 | 2011-9-8 10:10:02 | 显示全部楼层
数字可以用pb本身的isnumber(trim(sle_1.text)),不过这是判断纯数字的.字母可以用asc码.asc码对于任何语言都是通用的。用Pb的asc(trim(sle_1.text))转换成asc码。其中48~57为0~9;65~90为A~Z;97~122a~z你所描述的bigint型限制了字段保存应为数字,此时可以修改字段类型.为varchar()类型.此时输入数字和字母都可.如还有问题,可追问.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行