对Edit控件文本内容的判断
我想判断Edit的已输入文本里,是否含有中文,不知道该怎么判断?是在文本都输入完毕后判断,并非不允许输入中文。
[解决办法]
EDIT的的ONKEYPRESS中加入回车操作判断
取出总长度,用循环一个个判断,是不是在数字与符号之间的ASCII码的范围,
写一个函数
void 函数(参数)
{
int i;
int j;
AnsiString k;
i=参数-> Text.Trim().Length();
for (j=1;j <=i;j++)
{ k =参数-> Text.Trim().SubString(j,1);
if ((k < '0 ' || k> '9 ')
{
Application-> MessageBoxA( " ", " ",MB_OK);
return ;
}
}
}
[解决办法]
用AnsiString 自己的函数来看,中文是双字节编码的,不知道是不是这个要求~~~~~
//字符串是否含有中文,true 表示含有中文,false 表示不含中文
bool TForm1::isContainEng(AnsiString ID)
{
bool rtn = false;
try
{
AnsiString::TStringMbcsByteType temp;
for (int i=0;i < ID.Length();i++)
{
temp = ID.ByteType(i);
if(temp != mbSingleByte)
{
rtn = true;
break;
}
}
}
catch(...)
{
}
return rtn;
}
引用别人的,希望对楼主有帮助。。。。