您的位置:首页 > 大数据 > 人工智能

监控文本输入校验--继承PlainDocument类重写insertString方法

2011-04-13 09:08 274 查看
1.首先可以判断输入长度,2.校验输入insert为数字,3.data整个字符串不等于"-"就看是否能转换为数字.4.最后判断极值.

public static final int TYPE_1=1;
private int type=1;
private int min=-32768;
private int max=32768;

public void insertString(int offs, String str, AttributeSet a)
throws BadLocationException {
int length=getLength();
byte[] insert=str.getBytes();
String text=getText(0, length);

switch(type){

case TYPE_1:

for(int i=0;i<insert.length;i++){

if(!(abyte>='0' && abyte<='9' || abyte=='-')){

return;

}

}

String data=text.concat(str);

int val=0;

if(!data.equals("-")){

try {

val=Integer.parseInt(data);

} catch (NumberFormatException e) {

return; }

}

val=Integer.parseInt(data);

if(data.startsWith("00")){
return;
}
if(val<min){
String s=String.valueOf(min);
remove(0, getLength());
super.insertString(0, s, a);
}else if(val>max){
String s=String.valueOf(max);
remove(0, getLength());
super.insertString(0, s, a);
}else{
super.insertString(offs, str, a);
}
break;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐