我想要名称文本字段验证,我正在使用此代码,但是效果不佳。
Name_text.addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent EVT){
if(EVT.getKeyChar()>='a'&& EVT.getKeyChar()<='z'|| EVT.getKeyChar()>='A'&& EVT.getKeyChar()<='Z'|| EVT.getKeyChar()==8|| EVT.getKeyChar()==26){
Name_text.setEditable(true);
}
else{
JOptionPane.showMessageDialog(null, "enter characters only");
}
答案 0 :(得分:1)
你真的应该使用DocumentFilter类来执行这种类型的验证,这正是它的设计目的。如果用户将文字粘贴到字段中或您使用setText
,则不会通过KeyListener
您还可以查看this了解一些示例
答案 1 :(得分:0)
我想你想用这段代码验证:
if (Character.isDigit(EVT.getKeyChar())) {
Name_text.setEditable(true);
Name_text.setText("");
} else {
JOptionPane.showMessageDialog(null, "enter characters only");
}
您的评论编辑。