gpt4 book ai didi

java - MouseListener 似乎不适合我

转载 作者:行者123 更新时间:2023-12-02 13:00:35 29 4
gpt4 key购买 nike

我需要先说明一下,我的导师不允许我们使用 IDE。我们使用文本板。我想单击此标签,然后它从“H”更改为“T”。目前,当我单击标签时什么也不做。我忘记了什么?

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


public class Lab3Label extends JLabel implements MouseListener {
int count = 0;
boolean flag = true;

public Lab3Label (int i) {
setLayout(new BorderLayout());
count = i;
this.setText("H");
this.setFont(new Font("Serif", Font.PLAIN, 60));
this.setBorder(BorderFactory.createLineBorder(Color.black));
}

public void mouseReleased(MouseEvent e)
{

if(flag){
this.setText("H");
flag = false;
}

else{
this.setText("T");
flag = true;
}
}

public void mouseExited(MouseEvent e){}
public void mouseClicked(MouseEvent e){}
public void mousePressed(MouseEvent e){}
public void mouseMoved(MouseEvent e){}
public void mouseEntered(MouseEvent e){}


}

最佳答案

您的 JLabel 实现了 MouseListener,但您还需要告诉 JLabel 将事件发送给自身。在构造函数的末尾,您需要说

addMouseListener(this);

如果您还记得可以将任何类设为MouseListener,并且您必须将监听器连接到JLabel<,那么这就更有意义了JLabel 是它自己的监听器这一事实并不能免除您的这一责任。

关于java - MouseListener 似乎不适合我,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9170140/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com