怎样让java文本框只输入数字问题

如题所述

java swing中利用JFormattedTextField的控件加keyReleased能实现,以下实现的只能输入数字的文本框代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49

import java.text.ParseException;
import javax.swing.JFormattedTextField;
import javax.swing.JFrame;
import javax.swing.JPanel;

/**
*
* @author Administrator
*/
public class JFormattedText extends JFrame {

private JFormattedTextField text;

public JFormattedText() {
JPanel panel = new JPanel();
text = new JFormattedTextField(new java.text.DecimalFormat("#0"));
// text = new JFormattedTextField();
// text.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("#0"))));
text.setFont(new java.awt.Font("宋体", 0, 12)); // NOI18N
text.setMaximumSize(new java.awt.Dimension(50, 21));
text.setMinimumSize(new java.awt.Dimension(50, 21));
text.setPreferredSize(new java.awt.Dimension(50, 21));
//过滤输入的字符
text.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyReleased(java.awt.event.KeyEvent evt) {
String old = text.getText();
JFormattedTextField.AbstractFormatter formatter = text.getFormatter();
if (!old.equals("")) {
if (formatter != null) {
String str = text.getText();
try {
long page = (Long) formatter.stringToValue(str);
text.setText(page + "");
} catch (ParseException pe) {
text.setText("1");//解析异常直接将文本框中值设置为1
}
}
}
}
});
panel.add(text);
this.add(panel);
this.setBounds(200, 100, 100, 100);
}

public static void main(String[] arg) {
new JFormattedText().setVisible(true);
}
}
温馨提示:内容为网友见解,仅供参考
无其他回答

java 如何设置jTextField文本框只能输入数字?
\\x0d\\x0apublic class VoteElectKeyListener implements KeyListener {\\x0d\\x0a\\x0d\\x0a@Override\\x0d\\x0apublic void keyTyped(KeyEvent e) {\\x0d\\x0a\/\/ TODO Auto-generated method stub\\x0d\\x0aint keyChar=e.getKeyChar();\\x0d\\x0aif (keyChar>=KeyEvent.VK_0 && key...

java swing 怎么设置文本框只能输入数字
text.setMinimumSize(new java.awt.Dimension(50, 21));text.setPreferredSize(new java.awt.Dimension(50, 21));\/\/过滤输入的字符 text.addKeyListener(new java.awt.event.KeyAdapter() { public void keyReleased(java.awt.event.KeyEvent evt) { String old = text.getText();JFormattedTextField....

怎样实现在TextField里只能输入数字
import java.awt.event.KeyEvent;import java.awt.event.KeyListener;import java.util.regex.Matcher;import java.util.regex.Pattern;import javax.swing.JFrame;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JTextField;public class Test45 extends JFrame implements Key...

网页设计如何设计只有数字输入网页设计如何设计只有数字输入的
1、首先在excel页面输入数字106,然后选中数字6进行鼠标右击。2、然后在弹出来的页面中选择【设置单元格格式】。3、进入到格式设置的页面以后,接下来在此页面将【上标】前面给勾选,并且在页面的下方点击【确定】按钮。4、最后就可以看到10^6次方被成功地打出来了。在excel中如何设置输入数字的位数?我...

java怎么在文本框中限制只能输入数字
obj.value = obj.value.replace(".","$#$").replace(\/\\.\/g,"").replace("$#$",".");} <!--把下面代码加到与之间--> 只能输入数字和小数点的文本框:

在J2ME中如何限制在文本框中只输入字母,数字,下划线
用正则表达式:var c=\/[a-z\\d\一-\龥]\/i;c.test(文本框值)是否为true;

输入框怎么设置只能输入数字
输入框设置只能输入数字的具体步骤为:所需工具:excel。1、单击选择B列,菜单栏选择“数据”。2、在数据菜单下,单击选择“数据验证”-->单击子菜单“数据验证(V)...”.3、选择“设置”-->允许下拉框选择“整数”。4、在数据下拉框中选择“大于”选项。5、最小值输入框输入最小值“0”,点击...

如何用java键盘监听事件设置用户只能输入数字或者小数点?
给一个JTextField或者JTextArea或者JTextPane添加一个KeyListener,使得当用户输入数字或者小数点的时候,对应的JTextComponent作出相应的改变,否则看起来不变。既然是输入事件,代码放进KeyListener的KeyTyped里面。在初始化完成后,用户可以输入之前,就把JTextComponent里的值记录下来(例如记录在class变量valueTemp...

Java 加入限制只可以输入数字 急
,直接到catch里面的内容 int high = high_Scanner.nextInt();break; \/\/ 如果顺利通过上一步,就能出来while loop了 }catch(Exception e){ System.out.println("Error, enter a number instead");} } System.out.println("chulaile "); \/\/如果数字通过了,就能到这里来了 ...

Java文本框如何输入一个数据,就把数据存入到集合中去?
import java.awt.event.KeyListener;import java.util.ArrayList;import javax.swing.JFrame;import javax.swing.JTextArea;public class DemoSwing extends JFrame implements KeyListener { JTextArea area;ArrayList array;public DemoSwing(){ area = new JTextArea();array = new ArrayList();area.add...

相似回答