如何监听JTextField的失去焦点事件

 我来答
雪飞潇潇
2017-10-03 · TA获得超过6275个赞
知道大有可为答主
回答量:1968
采纳率:91%
帮助的人:873万
展开全部

让JTextField文本框响应焦点事件 即可. 

核心代码

JTextField jtf= new JTextField(10);
jtf.addFocusListener(new FocusListener() {
public void focusLost(FocusEvent e) {//失去焦点时
System.out.println("失去了焦点");
jtf.setBackground(Color.WHITE);
}
public void focusGained(FocusEvent e) {//获得焦点时
System.out.println("获得了焦点");
tf.setBackground(Color.PINK);

}
});

效果图

参考代码


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class TextFrame extends JFrame {

JTextField jtf;
    public TextFrame() {
     JPanel jp = new JPanel();
     jtf= new JTextField(10);
     jtf.addFocusListener(new FocusListener() {

@Override
public void focusLost(FocusEvent e) {//失去焦点时
System.out.println("失去了焦点");
jtf.setBackground(Color.WHITE);
}

@Override
public void focusGained(FocusEvent e) {//获得焦点时
System.out.println("获得了焦点");
jtf.setBackground(Color.PINK);

}
});
     jp.add(jtf);
    
     JButton jb = new JButton("点击按钮, 文本框会失去焦点");
     add(jb,BorderLayout.NORTH);
     add(jp,BorderLayout.SOUTH);
     setTitle("DEMO");
        setSize(300,220);// 窗口大小
        setLocationRelativeTo(null);// 窗口居中
        setDefaultCloseOperation(EXIT_ON_CLOSE);// 窗口点击关闭时,退出程序
        setVisible(true);
    }
   
     
    public static void main(String[] args) {
        new TextFrame();
    }

}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式