超简单实现一个只接收数字的类[JAVA]
2011-03-28 01:07
676 查看
当然啦,不是说在输入完成后才处理输入的是不是数字
直接来代码吧
继承自JTextField,监听按键消息
这里的话只能是单选的文本咯
构造函数只写了一个,有需要自己写咯,反正是那么简单的事
![](http://img.baidu.com/hi/jx2/j_0028.gif)
废话就不多说了
直接来代码吧
import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import javax.swing.JTextField; // public class NumberField extends JTextField implements KeyListener { private static final long serialVersionUID = 1L; NumberField(int columns) { setColumns(columns); addKeyListener(this); //必需的 } public void keyPressed(KeyEvent e){ } public void keyReleased(KeyEvent e){ } public void keyTyped(KeyEvent e) { char key = e.getKeyChar(); //只接收输入数字、'.'和'-' if ((key >= KeyEvent.VK_0 && key <= KeyEvent.VK_9) || key == KeyEvent.VK_PERIOD || key == KeyEvent.VK_MINUS ) { if (key == KeyEvent.VK_PERIOD) { //如果已经存在'.',则不处理 String str = getText(); if (str.indexOf('.') != -1) e.consume(); } //输入负号 else if (key == KeyEvent.VK_MINUS) { if (getText().length() != 0) e.consume(); } } else //拒绝其它字符输入 { e.consume(); } } }
继承自JTextField,监听按键消息
这里的话只能是单选的文本咯
构造函数只写了一个,有需要自己写咯,反正是那么简单的事
![](http://img.baidu.com/hi/jx2/j_0028.gif)
废话就不多说了
相关文章推荐
- java 编写程序实现从控制台接收一个 5 位以上的整数,使用数组来判断该数字 * 是否是回文数。(例如:789987,12344321是回文数)
- [Java定时器]用Spring Task实现一个简单的定时器.
- 一个简单的Echo Server的Java实现(增强版)
- 数组中有一个数字出现的次数超过了数组长度的一半,请找出这个数。java实现
- 用Java实现一个简单的二叉树
- 在一个程序中需要用到全局变量(在多个class之间共享数据),请问如何定义具有这种功能的变量?或者是否有其他的方法解决多个class之间的数据共享(尽量简单实现)。 首先应该明确 Java中没有全局变
- Java Socket发送与接收HTTP消息简单实现
- 一个简单实现的字符串数字乘法。
- Java实现一个简单的两人五子棋游戏(四) 落子动作的实现
- JAVA编写的一个简单的Socket实现的HTTP响应服务器
- JAVA SPRING MVC 实现一个简单的页面显示功能
- 用java 实现一个简单的web 服务器
- 一个GUI的简单练习-------- Java记事本 简单实现 陆续完善中……
- 一个java实现的简单工厂模式
- Java实训——创建一个窗体程序,实现简单的数学加、减法测试。
- java 实现输入一个字符串,打印出其中所有的数字
- 模仿JavaAppArguments.java示例,编写一个程序,此程序从命令行接收多个数字,求和之后输出结果。
- 用JAVA实现一个简单的登陆窗口
- java Udp实现简单地发送接收信息
- JAVA实现一个简单的代数运算语言编译器(三)--词法分析