当我在java中离开JTextField时如何显示消息



实际上我在写代码。我想在离开JTextField显示消息对话框(不按任何按钮(,但不知道如何执行此操作。请帮忙。我正在使用 NetBeans。

您可以使用焦点侦听器 API 来实现这一点。

focusLost事件中,可以显示对话框。

文档中的示例:

public void focusLost( FocusEvent e )
{
    displayMessage( "Focus lost", e );
}
您可以使用

FocusListener 类 focusLost(( 方法。

简单的例子:

import java.awt.FlowLayout;
import java.awt.event.FocusEvent;
import java.awt.event.FocusListener;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
public class ExampleClass {
    JFrame MainFrame;
    JTextField textField1;
    JTextField textField2;
    public ExampleClass(){
        MainFrame = new JFrame("Example");
        MainFrame.setLayout(new FlowLayout());
        textField1 = new JTextField(10);
        textFieldFocus();
        textField2 = new JTextField("Dummy text");
        MainFrame.add(textField1);
        MainFrame.add(textField2);
        MainFrame.pack();
        MainFrame.setVisible(true);
    }
    private void textFieldFocus() {                                     
        textField1.addFocusListener(new FocusListener() {
            @Override
            public void focusLost(FocusEvent e) {
                JOptionPane.showMessageDialog(null, "Done!");
            }
            @Override
            public void focusGained(FocusEvent e) {}
        });
    }
    public static void main(String[] args) {
        new ExampleClass();
    }
}

最新更新