swing 文本框只能输入整数或者小数 如体,整数包括0,小数格式为0.0,0.00,0.01===为正确的格式 [color={0}]在线等待中{1}[/color] 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 试试看这样行不?package com.gui;import java.awt.BorderLayout;import java.awt.event.KeyEvent;import java.awt.event.KeyListener;import javax.swing.JFrame;import javax.swing.JTextField;public class FrameTest extends JFrame { public FrameTest() { final JTextField t = new JTextField(10); t.addKeyListener(new TextChangeEvent(t)); this.add(t, BorderLayout.NORTH); } class TextChangeEvent implements KeyListener { private JTextField t; public TextChangeEvent(JTextField t) { this.t = t; } @Override public void keyPressed(KeyEvent e) { } @Override public void keyReleased(KeyEvent e) { t.setText(t.getText().trim()); String s = t.getText().trim(); String regex1 = "\\d*"; String regex2 = "\\d{1,}\\.\\d*"; if (s != null && !s.equals("")) { if (!s.matches(regex1)) { if (!s.matches(regex2)) { System.out.println("error"); t.setText(s.substring(0, s.length() - 1)); } } } } @Override public void keyTyped(KeyEvent e) { } } public static void main(String[] args) { FrameTest frame = new FrameTest(); frame.setSize(400, 300); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }} thc1987,那样不行啊,老兄 那就把鼠标的事件加到TextChangeEvent 或者keyEvent中试试。 hui94781674,能给说明白点吗,或者给点代码哦 eclipse这个诡异的错误。谁来瞧瞧。 谁能帮我解释下这句代码 强制转换问题 为什么我用了双缓冲,还是闪屏得厉害? 关于JDK1.4打印 请问谁在程序中读写过音标?望不吝赐教~ 统计大家用的什么JAVA IDE,帮忙顶一下! JAVA好像没有SUN吹的那么好 请问 开发qq这样的聊天软件难吗?征合作 java中readLine的问题 classpath设置问题
package com.gui;import java.awt.BorderLayout;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;import javax.swing.JFrame;
import javax.swing.JTextField;public class FrameTest extends JFrame { public FrameTest() {
final JTextField t = new JTextField(10);
t.addKeyListener(new TextChangeEvent(t));
this.add(t, BorderLayout.NORTH);
} class TextChangeEvent implements KeyListener { private JTextField t; public TextChangeEvent(JTextField t) {
this.t = t;
}
@Override
public void keyPressed(KeyEvent e) {
} @Override
public void keyReleased(KeyEvent e) {
t.setText(t.getText().trim());
String s = t.getText().trim();
String regex1 = "\\d*";
String regex2 = "\\d{1,}\\.\\d*"; if (s != null && !s.equals("")) {
if (!s.matches(regex1)) {
if (!s.matches(regex2)) {
System.out.println("error");
t.setText(s.substring(0, s.length() - 1));
}
}
}
} @Override
public void keyTyped(KeyEvent e) {
}
} public static void main(String[] args) {
FrameTest frame = new FrameTest();
frame.setSize(400, 300);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
thc1987,那样不行啊,老兄
hui94781674,能给说明白点吗,或者给点代码哦