SWING的表单校验

mysohu 2004-09-09 02:31:13
比如:JTextFeild,主要也是对这种的校验,急,急,.........
...全文
225 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
mysohu 2004-09-20
  • 打赏
  • 举报
回复
谢谢楼上的各位兄弟,小弟在这谢谢了
alickma 2004-09-10
  • 打赏
  • 举报
回复
忘记说了,我开始是要限制长度所以JTextFieldName.setDocument(new checkinput(5));
里的5就是要限制的长度。 后来不需要了,所以........
alickma 2004-09-10
  • 打赏
  • 举报
回复
这个是校验类,可以做为一个新类,作为新类比较方便调用,也使程序有更好的结构。
我这个程序是用来校验输入字符的,只有在a-z才会在JTextField里显示(JtextArea也适用),否则不会显示,并且会有报错音。至于长度啊或者另外的限制,你也可以参考进行。

import javax.swing.text.*;
public class checkinput extends PlainDocument{
int max;
public checkinput(int maxlength){
max=maxlength;
}
public void insertString(int offset,String s,AttributeSet a) throws BadLocationException{
if(s.compareTo("a")<0||s.compareTo("z")>0){
Toolkit.getDefaultToolkit().beep();
// System.out.println(s);
return;
}
// public void removeUpdate(int offset,String s,AttributeSet a){
// }
super.insertString(offset,s,a);
}
}


在需要校验的JTextFiled添加 JTextFieldName.setDocument(new checkinput(5));
fqyang 2004-09-09
  • 打赏
  • 举报
回复
自己写个JTextField的子类加入校验,不然的话50个表单够你写的

如:
public class JTextFieldEx
extends JTextField implements FocusListener, KeyListener{

public JTextFieldEx() {
setSize(0,0);
setCursor(new Cursor(Cursor.DEFAULT_CURSOR));

addKeyListener(this);
addFocusListener(this);

setTrimEnable(true); //是否去掉两端空格
setMaxColumn(10); //输入字串长度
setCheckCharCodeType(m_nCheckCharCodeType); //输入字串的类型
//...

}

在相应的事件中实现校验
mq612 2004-09-09
  • 打赏
  • 举报
回复
即时校验:
给JTextField添加KeyListener监听,当有新的字符输入时,调用一个方法来判断是否为合法(你制定的规则)的字符,如果不合法则去掉本字符,并可以让程序发出警告声。
mysohu 2004-09-09
  • 打赏
  • 举报
回复
比如:输入的是数字,不能为字符,数字的长度,是否为空,等......
alickma 2004-09-09
  • 打赏
  • 举报
回复
校验什么啊?
mysohu 2004-09-09
  • 打赏
  • 举报
回复
在一个窗体里,有50个这样的表单

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧