首页 > 代码库 > java 24 - 6 GUI之 创建只能输入数字的文本框

java 24 - 6 GUI之 创建只能输入数字的文本框

需求:
  创建一个含有标签和文本框的窗体,其中文本框只能输入数字

步骤:(大致上)
  创建窗体对象
  创建标签对象
  创建文本框对象
  把组件添加到窗体中
  设置标签的监听事件,对键盘按下的数据进行监听
  设置窗体关闭监听事件
  设置显示窗体

 

代码:

  

 1 public class FrameTest3 { 2  3     public static void main(String[] args) { 4  5         // 创建窗体对象 6         Frame f = new Frame("QQ号码"); 7         f.setBounds(300, 300, 500, 400); 8         f.setLayout(new FlowLayout());//别忘了布局设置 9 10         // 创建标签对象11         Label l = new Label("请输入QQ号码,非数字显示不出来");12 13         // 创建文本框对象14         TextField tf = new TextField(20);15 16         // 把组件添加到窗体中17         f.add(l);18         f.add(tf);19 20         // 设置窗体关闭监听事件21         f.addWindowListener(new WindowAdapter() {22             public void windowClosing(WindowEvent e) {23                 System.exit(0);24             }25         });26         27         // 设置文本框的监听事件,对输入的数据进行监听28         // 由于是不让非数字的数据出现到文本框中29         // 所以监听对象是键盘:KeyListener键盘侦听器 KeyAdapter 键盘适配器30         tf.addKeyListener(new KeyAdapter() {31             // public void keyPressed(KeyEvent e)按下某个键时调用此方法。32             public void keyPressed(KeyEvent e) {// KeyEvent:键盘类33                 // 首先得获取到键盘按下的字符34                 // 然后进行判断是否是数字键,如果不是,则取消这次操作35                 // public void consume()使用此事件,以便不会按照默认的方式由产生此事件的源代码来处理此事件。36 37                 char c = e.getKeyChar();38 39                 if (!(c >= ‘0‘ && c <= ‘9‘)) {40                     e.consume();41                 }42             }43         });44 45 46 47         // 设置显示窗体48         f.setVisible(true);49 50     }51 }

 

java 24 - 6 GUI之 创建只能输入数字的文本框