当前位置:  技术问答>java相关

如何设置TextField或JTextField,使其只能输入规定个数的字符?

    来源: 互联网  发布时间:2015-04-27

    本文导语:  请各位多帮忙! | TextField jt = new TextField();         jt.addKeyListener(new KeyListener(){             public void keyTyped(KeyEvent e){             }             public void keyPressed(Ke...

请各位多帮忙!

|
TextField jt = new TextField();
        jt.addKeyListener(new KeyListener(){
            public void keyTyped(KeyEvent e){
            }
            public void keyPressed(KeyEvent e){
                if(jt.getText().length()>3){
                    System.out.println("OK");
                    e.consume();
                }
            }
            public void keyReleased(KeyEvent e){
            }
        });
    }
AWT的可以通过添加KeyListener来实现,Swing的应该继承Document接口来实现用KeyListener好象就不行了.

|
先定义一个NumberDocument类:
public class NumberDocument extends PlainDocument
{
public void insertString(int offset,String s,AttributeSet attributeSet)
throws BadLocationException
{
try{
if(!s.equals (".") && !s.equals ("-"))
{
Integer.parseInt(s,10);
}
String src=/tech-qa-java/this.getText(0,this.getLength ());
Double.parseDouble (src.substring (0,offset)+s+src.substring (offset,src.length ()));
        }catch(Exception ex)
{
Toolkit.getDefaultToolkit().beep();
return;
}
super.insertString (offset,s,attributeSet);
}
}

怎么用它呢:
JTextField txtfield = new JTextField();
txtfield.setDocument(NumberDocument);


OK!

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • C++ Bitsets 成员 count():返回被设置的位的个数
  • C++ I/O 成员 precision():设置精度
  • 在使用gcc之前,需要先设置环境吗?如何设置?在线等!!!
  • C++ Bitsets 成员 any():如果有任何一个位被设置就返回true
  • 用grub能否设置启动密码?如何设置?
  • php iis7站长之家
  • 在linux服务器上面设置squid后怎么设置可以使客户端能使用QQ?
  • C++ Vectors 成员 reserve():设置Vector最小的元素容纳数量
  • 请问设置一个和root权限差不多的用户怎么设置?
  • C++ Bitsets 成员 set():设置位
  • 用JSP。XML开发网站。请问那种环境设置最好。该如何设置环境
  • C++ Bitsets 成员 none():如果没有位被设置则返回true
  • 环境变量设置设置与显示不一致
  • C++ Strings(字符串) 成员 resize():重新设置字符串的大小
  • linux下到底如何设置环境变量?在哪设置?详细具体点
  • Windows7自带防火墙设置:启动,关闭及高级设置
  • 紧急求救各位了:linux下有没有有设置报文最小长度的命令(好像只有设置报文最大长度MTU,通过ifconfig)?
  • C++ Strings(字符串) 成员 reserve():保留一定容量以容纳字符串(设置capacity值)
  • 怎么设置在Linux上面设置WEB服务器?请各位高手指教!!!
  • C++ I/O 成员 setf():设置格式标志
  • linux中端口号设置是在哪个配置文件,该如何设置?
  • IE11设置IE兼容性视图及提升Windows 8.1中IE11兼容性的相关设置
  • 100求救 jrun3.0 里的beans的设置,你登陆我的机器设置


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3