日期:2014-05-20  浏览次数:21122 次

java中JTextField怎么设置只能输入一个数字?
java中JTextField怎么设置只能输入一个数字?其他的东西都输不进去?

------解决方案--------------------
如下:

Java code

JTextField field = new JFormattedTextField(NumberFormat.getIntegerInstance());
field.setColumns(1);

------解决方案--------------------
添加一个监听事件,这个应该选失去焦点的时候,
text.addFocusListener(new FocusListener()
{

@Override
public void focusGained(FocusEvent e) {
// TODO Auto-generated method stub

}

@Override
public void focusLost(FocusEvent e) {
String str=text.getText().trim();
if(!str.matches("[1-9][0-9]*"))
{
JOptionPane.showMessageDialog(null, "you must input an integer");
text.setText("");
}


}

});
如果是小数,你也可以同样设置一个正则表达式来判断啊
------解决方案--------------------
可以添加一个keyReleased事件,判断输入的是否是个数字,然后做相应的处理即可