限制JTextFiled只能输入定长或者数字
2010-11-16 14:55
134 查看
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.JTextField;
/**
* 限制JTextFiled只能输入定长或者数字
* @author martin
*/
public class MyJTextField extends JTextField {
private int limit = Integer.MAX_VALUE; //最大定长数
private boolean numberOnly; //只能接受数字
public MyJTextField() {
addKeyListener(new KeyAdapter() {
@Override
public void keyTyped(KeyEvent e) {
if(getText().length() + 1 > limit) {
deleteInputChar(e);
return;
}
if (numberOnly) {
char input = e.getKeyChar();
if (!Character.isDigit(input)) {
deleteInputChar(e);
}
}
}
private void deleteInputChar(KeyEvent source) {
source.setKeyChar((char) KeyEvent.VK_CLEAR);
}
});
}
public void setMaxTextLength(int limit) {
if(limit < 0) {
return;
}
this.limit = limit;
}
public int getMaxTextLength() {
return limit;
}
public void setNumberOnly(boolean numberOnly) {
this.numberOnly = numberOnly;
}
public boolean getNumberOnly() {
return numberOnly;
}
}
}
import java.awt.event.KeyEvent;
import javax.swing.JTextField;
/**
* 限制JTextFiled只能输入定长或者数字
* @author martin
*/
public class MyJTextField extends JTextField {
private int limit = Integer.MAX_VALUE; //最大定长数
private boolean numberOnly; //只能接受数字
public MyJTextField() {
addKeyListener(new KeyAdapter() {
@Override
public void keyTyped(KeyEvent e) {
if(getText().length() + 1 > limit) {
deleteInputChar(e);
return;
}
if (numberOnly) {
char input = e.getKeyChar();
if (!Character.isDigit(input)) {
deleteInputChar(e);
}
}
}
private void deleteInputChar(KeyEvent source) {
source.setKeyChar((char) KeyEvent.VK_CLEAR);
}
});
}
public void setMaxTextLength(int limit) {
if(limit < 0) {
return;
}
this.limit = limit;
}
public int getMaxTextLength() {
return limit;
}
public void setNumberOnly(boolean numberOnly) {
this.numberOnly = numberOnly;
}
public boolean getNumberOnly() {
return numberOnly;
}
}
}
相关文章推荐
- Javascript验证和限制文本框只能输入数字或者小数
- js限制文本框只能输入整数或者带小数点的数字
- 正则表达式限制文本框只能输入中文或者英文或者数字
- js、正则限制input输入框只能输入数字或者小数
- 输入框只能输入数字 以及其他限制的总结
- asp.net中前台限制TextBox文本框只能输入数字和小数(或数字和字母)
- html中radio单选和文本框限制只能输入数字的解决方案
- jquery 限制文本框只能输入数字
- JS通过正则限制 input 输入框只能输入整数、小数(金额或者现金) 两位小数
- 解决vue中监听input只能输入数字及英文或者其他情况的问题
- 数字键盘回收的问题-限制只能数字输入
- JAVA基础:SWING中JTextField限制只能输入数字
- 用正则表达式限制文本框只能输入数字,小数点,英文字母,汉字等各类代码
- html限制文本框只能输入int类型的数字
- js只能输入数字或者分号!
- JQuery 限制文本框只能输入数字和小数点
- 正则限制input框只能输入数字,英文等
- js正则表达式限制文本框只能输入数字,小数点,英文字母,汉字等各类代码
- 从别人那看到的 js正则表达式限制文本框只能输入数字,小数点,英文字母
- C#验证:限制TextBox只能输入数字并控制输入数字的长度(数字)