在窗口中创建一个文本框,为这个文本框添加FocusListener监听器,当文本框获得焦点,在文本框里显示自己的学号,当失去焦点时显示自己的姓名。
时间: 2024-03-13 08:44:45 浏览: 72
好的,我来为您解答这个问题。
首先,您需要使用Java Swing创建一个窗口和文本框,然后添加FocusListener监听器。在监听器中,您可以根据焦点状态来设置文本框的文本。
以下是一个简单的实现示例代码:
```java
import javax.swing.*;
import java.awt.event.*;
public class Test extends JFrame {
private JTextField textField;
public Test() {
setTitle("测试窗口");
setSize(300, 200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
textField = new JTextField();
add(textField);
textField.addFocusListener(new FocusListener() {
@Override
public void focusGained(FocusEvent e) {
textField.setText("123456789"); // 修改为自己的学号
}
@Override
public void focusLost(FocusEvent e) {
textField.setText("张三"); // 修改为自己的姓名
}
});
}
public static void main(String[] args) {
Test test = new Test();
test.setVisible(true);
}
}
```
您可以将上述代码复制到一个.java文件中,然后编译运行,就可以看到一个带有文本框的窗口。当您点击文本框并使其获得焦点时,文本框中会显示您的学号。当您将焦点移出文本框时,文本框中会显示您的姓名。
注意:上述代码中的文本框只能输入单行文本。如果您需要输入多行文本,可以使用JTextArea代替JTextField,并且需要将FocusListener改为CaretListener。
阅读全文