是否可以限制TextField(而不是JTextField)中的输入长度

时间:2014-03-07 11:00:25

标签: java user-interface

TextField tf3=new TextField("");
    tf3.setBackground(Color.pink);
    tf3.setForeground(Color.blue);

我需要限制输入的长度......我该怎么办?感谢....

2 个答案:

答案 0 :(得分:1)

int MAX_LEN = 10;

TextField.addDataChangeListener(new DataChangedListener() {

  public void dataChanged(int type, int index) {

    if(TextField.getText().length() > MAX_LEN ) {
    TextField.setText(TextField.getText().substring(0, MAX_LEN ));

  }
}

请参阅此link了解实际页面 希望这个会有所帮助。

答案 1 :(得分:0)

public class BoundedTextField<D> extends TextField<D> {
@Override
public void setMaxLength(int m) {
    super.setMaxLength(m);
    if (rendered) {
        getInputEl().setElementAttribute("maxLength", m);
    }
}

@Override
protected void onRender(Element target, int index) {
    super.onRender(target, index);
    getInputEl().setElementAttribute("maxLength", getMaxLength());
}

}