- /**
- * @(#)OnlyInputNumberOfJTextField.java
- *
- *
- * @author
- * @version 1.00 2008/8/7
- */
- import java.awt.event.*;
- import java.awt.FlowLayout;
- import javax.swing.*;
- import java.util.regex.*;
- public class OnlyInputNumberOfJTextField
- extends JFrame
- implements FocusListener{
- JTextField onlyInputNumber1;
- JTextField onlyInputNumber2;
- /**
- * Creates a new instance of <code>OnlyInputNumberOfJTextField</code>.
- */
- public OnlyInputNumberOfJTextField() {
- setLayout(new FlowLayout());
- onlyInputNumber1=new JTextField();
- onlyInputNumber1.setColumns(20);
- onlyInputNumber1.addFocusListener(this);
- getContentPane().add(onlyInputNumber1);
- onlyInputNumber2=new JTextField();
- onlyInputNumber2.setColumns(20);
- onlyInputNumber2.addFocusListener(this);
- getContentPane().add(onlyInputNumber2);
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- setSize(100,200);
- setVisible(true);
- }
- /**
- * @param args the command line arguments
- */
- public static void main(String[] args) {
- new OnlyInputNumberOfJTextField();
- }
- public void focusGained(FocusEvent e) {
- if(e.getSource()==onlyInputNumber1){
- String text=onlyInputNumber1.getText();
- boolean b = Pattern.matches("(0¦[1-9]//d*)(//.//d)?(//d*)",text);
- if(!b)
- onlyInputNumber1.setText("");
- }
- if(e.getSource()==onlyInputNumber2){
- String text=onlyInputNumber2.getText();
- boolean b = Pattern.matches("(0¦[1-9]//d*)(//.//d)?(//d*)",text);
- if(!b)
- onlyInputNumber2.setText("");
- }
- }
- public void focusLost(FocusEvent e) {
- if(e.getSource()==onlyInputNumber1){
- String text=onlyInputNumber1.getText();
- boolean b = Pattern.matches("(0¦[1-9]//d*)(//.//d)?(//d*)",text);
- if(!b)
- onlyInputNumber1.setText("");
- }
- if(e.getSource()==onlyInputNumber2){
- String text=onlyInputNumber2.getText();
- boolean b = Pattern.matches("(0¦[1-9]//d*)(//.//d)?(//d*)",text);
- if(!b)
- onlyInputNumber2.setText("");
- }
- }
- }
只能输入数字(整数和小数)的文本框(JTextField)
最新推荐文章于 2023-03-16 13:01:58 发布