Java实现:为Jabel加入MouseListener,当鼠标进行本控件时在Jalbel显示自己学号,当鼠标移出时显示自己姓名,当按下时显示当前的时间。
时间: 2024-02-23 08:59:23 浏览: 136
可以使用以下代码实现:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MyLabel extends JLabel implements MouseListener {
public MyLabel() {
super();
addMouseListener(this);
}
@Override
public void mouseClicked(MouseEvent e) {
// 显示当前时间
setText(new java.util.Date().toString());
}
@Override
public void mouseEntered(MouseEvent e) {
// 显示学号
setText("学号:123456");
}
@Override
public void mouseExited(MouseEvent e) {
// 显示姓名
setText("姓名:张三");
}
@Override
public void mousePressed(MouseEvent e) {}
@Override
public void mouseReleased(MouseEvent e) {}
}
```
在使用该 Label 时,只需要创建一个 MyLabel 的实例,然后将其添加到需要显示的容器中即可。例如:
```java
public static void main(String[] args) {
JFrame frame = new JFrame("MyLabel Example");
frame.setSize(300, 200);
MyLabel label = new MyLabel();
label.setHorizontalAlignment(JLabel.CENTER);
label.setVerticalAlignment(JLabel.CENTER);
frame.getContentPane().add(label);
frame.setVisible(true);
}
```
运行该程序后,当鼠标移到该 Label 上时,会显示学号,移出时会显示姓名,点击时会显示当前时间。
阅读全文