请大家帮忙!两个小问题 JTextField有没有什么方法可以限制最大的输入字符数?JTextField构造函数可以帮你 我是想在每输入一个字符时,检查一个JTextField对象中共有多少字符?JTextField.length 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 给你写一个简单的import javax.swing.JTextField;import javax.swing.event.DocumentEvent;import javax.swing.event.DocumentListener;import javax.swing.text.AttributeSet;import javax.swing.text.BadLocationException;import javax.swing.text.PlainDocument;public class MaxLengthTextField extends JTextField implements DocumentListener { public MaxLengthTextField() { this( -1); } public MaxLengthTextField(int maxLength) { setDocument(new MaxLengthDocument(maxLength)); getDocument().addDocumentListener(this); } class MaxLengthDocument extends PlainDocument{ private int fMaxLength = -1; // Less than 0 means no length limit. public MaxLengthDocument() { this( -1); } public MaxLengthDocument(int maxLength) { fMaxLength = maxLength; } public void insertString(int offs, String str, AttributeSet attr) throws BadLocationException { int origLength = getLength(); char[] input = str.toCharArray(); int length = 0; for (int i = 0; i < input.length; i++) { if ((fMaxLength >= 0) && (origLength + length >= fMaxLength)) { break; } length++; } super.insertString(offs, new String(input, 0, length), attr); } } public void insertUpdate(DocumentEvent e) { System.out.println(getText().length()); } public void removeUpdate(DocumentEvent e) { System.out.println(getText().length()); } public void changedUpdate(DocumentEvent e) { }} JSP中是中文,传递到后台后是乱码! 求助:遗传算法代码(java) boolean Indexed = (bits & index) != 0 什么意思? 将String转为int的最简单方法是什么?比如"50"转换成int型的50? org.papche.commons.net.ftp.FTPClient下面的方法不支持中文, 怎么办? 关于键盘回车操作的问题 关于包的问题? 包问题? 困惑中?!!!! 《精通EJB》? java是哑巴吗??在线等解答 请教:为什么用接口定义对象? Timer问题
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;
import javax.swing.text.AttributeSet;
import javax.swing.text.BadLocationException;
import javax.swing.text.PlainDocument;public class MaxLengthTextField extends JTextField implements DocumentListener { public MaxLengthTextField() {
this( -1);
} public MaxLengthTextField(int maxLength) {
setDocument(new MaxLengthDocument(maxLength));
getDocument().addDocumentListener(this);
} class MaxLengthDocument extends PlainDocument{ private int fMaxLength = -1; // Less than 0 means no length limit. public MaxLengthDocument() {
this( -1);
} public MaxLengthDocument(int maxLength) {
fMaxLength = maxLength;
} public void insertString(int offs, String str, AttributeSet attr) throws
BadLocationException {
int origLength = getLength();
char[] input = str.toCharArray();
int length = 0;
for (int i = 0; i < input.length; i++) {
if ((fMaxLength >= 0) && (origLength + length >= fMaxLength)) {
break;
}
length++;
} super.insertString(offs, new String(input, 0, length), attr);
}
}
public void insertUpdate(DocumentEvent e) {
System.out.println(getText().length());
} public void removeUpdate(DocumentEvent e) {
System.out.println(getText().length());
} public void changedUpdate(DocumentEvent e) { }
}