`
zengxx1989
  • 浏览: 300360 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

JTextField 只能输入限定的数字

阅读更多
package com.util;

import javax.swing.text.*;

/**
 * 实现让文体框只能输入限定长度的数字
 * @author 曾祥训
 *
 */
public class NumberLenghtLimitedDmt extends PlainDocument {

	/**
	 * 
	 */
	private static final long serialVersionUID = -7371120135793981234L;
	
	private int limit;

	public NumberLenghtLimitedDmt(int limit) {
		super();
		this.limit = limit;
	}

	public void insertString(int offset, String str, AttributeSet attr)
			throws BadLocationException {
		if (str == null) {
			return;
		}
		if ((getLength() + str.length()) <= limit) {

			char[] upper = str.toCharArray();
			int length = 0;
			for (int i = 0; i < upper.length; i++) {
				if (upper[i] >= '0' && upper[i] <= '9') {
					upper[length++] = upper[i];
				}
			}
			super.insertString(offset, new String(upper, 0, length), attr);
		}
	}
}



使用
JTextField txtAge = new JTextField();
txtAge.setDocument(new NumberLenghtLimitedDmt(3));
分享到:
评论
1 楼 finux 2010-07-25  
不如使用JFormattedTextField.setFormatter(JFormattedTextField.AbstractFormatter)

相关推荐

    JTextField限制最大数字.txt

    ### JTextField限制最大数字知识点解析 #### 一、背景与需求分析 在开发基于Java Swing的应用程序时,我们经常...这种方法不仅可以应用于限制数字输入的情况,还可以根据实际需求进行调整,用于其他类型的数据验证。

    控制JTextField的输入

    以下是一个简单的`DocumentFilter`示例,它限制了`JTextField`只能输入数字: ```java public class NumberDocumentFilter extends DocumentFilter { @Override public void insertString(FilterBypass fb, int ...

    JTextField输入时实现位数监听

    这种机制不仅可以防止用户输入过长的文本,还可以用于实现各种输入验证,例如只允许数字输入、字母输入或者特定格式的文本等。 在实际项目中,我们可能还需要考虑其他因素,如输入的实时反馈(如高亮显示错误)、...

    IP地址格式输入文本框

    在这个类中,可能会定义一个监听器,当用户输入或粘贴IP地址时,检查输入的格式是否合法,如确保每个段的数字在0-255之间,且整个地址由4个用点分隔的部分组成。此外,它可能还包含一个方法用于将输入的IP地址转换为...

    原创:java封装了的JTextField,可以达到google输入框的效果

    Java中的`JTextField`是Swing库中一个基础的组件,用于创建文本输入字段。它允许用户输入单行文本,并且通常与`Document`对象关联,`Document`管理`JTextField`中的数据。在标准的`JTextField`中,虽然没有内置的...

    弹窗辅助输入JTextField

    在Java Swing应用开发中,有时候我们需要提供一种更加用户友好的输入方式,比如在输入框(JTextField)中输入内容时,能实时根据已输入的字符给出匹配建议,以辅助用户快速选择目标信息。这种功能常见于订机票时输入...

    JTextField添加“自动完成”

    总结来说,实现`JTextField`的自动完成功能,主要依赖于`JComboBox`的下拉列表特性,通过组合和监听机制,可以在用户输入时动态展示匹配的建议,从而提升用户的输入效率和应用的用户体验。这种设计思路展示了在Java ...

    jTextField中关键字加颜色

    代码片段中实现了一个名为 `color()` 的方法,其主要功能是将 `jTextField1` 中输入的关键字在 `jTextArea1` 中进行搜索,并标记匹配到的关键字。具体步骤如下: 1. **初始化变量**: - `i`:记录 `jTextField1` ...

    java JTextField组件的使用

    例如,限制只能输入数字: ```java Document doc = textField.getDocument(); doc.addDocumentListener(new DocumentListener() {...}); ``` 7. **样式定制** 可以通过`setFont()`改变字体,`setForeground()`...

    可以输入数字的小应用程序图形用户界面

    2. 创建组件:例如,创建一个`JFrame`作为窗口,然后添加`JLabel`显示提示信息,`JTextField`供用户输入数字,以及`JButton`来触发操作。 3. 实现事件处理:当用户点击按钮时,需要定义一个事件监听器来处理这个动作...

    带水印(背景)的JTextField

    在Java图形用户界面设计中,JTextField是用于接收单行文本输入的基本组件。而水印效果通常是指在文本框内显示半透明文字或图像,用于提示用户输入信息,但不会被用户输入的文字覆盖。 这篇博客文章可能详细介绍了...

    java JTextField美化Demo

    实现圆角矩形边框,hint文字,主要代码: ... JTextField textField = (JTextField) c; if ("".equals(textField.getText())) { g2d.setColor(Color.BLACK); g2d.drawString("请输入文字...", 10, 18); }

    JTextField_Example.java

    JTextField_Example.java

    编写一个用户注册信息填写验证程序,注册信息包括用户名、密码、EMAIL地址、联系电话。要求验证联系电话中只能输入数字,EMAIL地址中需要包括“@”符号,密码域不少于6位。要求联系电话在输入过程中保证不能有非数字,而其他两个域在点击注册按钮时再进行数据检查。

    联系电话验证:只允许数字输入 为了确保联系电话的有效性,程序应实时检测并阻止任何非数字字符的输入。这可以通过监听电话号码输入框的文本变化事件,并使用正则表达式或字符检查来实现。 #### b. 邮件地址验证:...

    ValidarNumeros:验证仅允许以Java语言输入数字的文本框

    在Java编程中,文本框(JTextField)是用于接收用户输入的组件,常见的应用场景包括登录密码、手机号码等。为了确保用户输入的数据符合特定格式,例如只允许输入数字,我们需要进行输入验证。本项目"ValidarNumeros...

    Text_JTextField.class

    Text_JTextField.class

    java swing-JTextField的使用

    JTextField是Java Swing库中的一个组件类,用于接收用户的文本输入。

    Java猜数字游戏源代码

    在这个游戏中,使用了 JTextField 来输入猜测的数字。 知识点10:Box Box 是一个容器,用于存放其他组件。在这个游戏中,使用了 Box 来存放水平排列的组件。 通过分析 Java 猜数字游戏源代码,我们可以总结出多个...

    猜数字游戏

    控制器是模型和视图之间的桥梁,它接收来自视图的用户输入,处理这些输入(比如验证猜测的数字),然后更新模型的状态或通知视图进行相应的显示更新。在猜数字游戏中,控制器可能包含一个方法来比较用户输入的数字和...

    jisuanqi.rar_jtextfield

     在完成Swing的学习后,练习使用Swing包中JFrame、JButton、JLabel、JTextField、JMenu、JMenuItem等组件完成图形界面绘制。 前期能够独立思考并完成计算器的逻辑代码。 熟练使用JButton、JTextField、JLabel等...

Global site tag (gtag.js) - Google Analytics