java中给一个JLable数组添加鼠标监听?

java中给一个JLable数组添加鼠标监听?,第1张

for (int i = 0i <gt.lengthi++) {

final int index = i

gt[i].addMouseListener(new MouseAdapter() {

@Override

public void mouseEntered(MouseEvent e) {

gt[index].setIcon(new ImageIcon("newIcon.png"))

}

@Override

public void mouseExited(MouseEvent e) {

gt[index].setIcon(null)

}

})

}

在这个示例中,我们使用

for

循环遍历

gt

数组中的每个

JLabel

,并为其添加一个匿名的

MouseAdapter

对象作为鼠标监听器。在监听器中,我们使用

final

关键字定义了一个

index

变量,用于存储当前

JLabel

在数组中的索引。然后,我们在

mouseEntered

方法中使用

setIcon

方法将当前

JLabel

图标设置为新的图标。在

mouseExited

方法中,我们将当前

JLabel

的图标设置为

null

,以恢复其原始图标。

样例代码自己好好读读吧:

import java.awt.*

import java.awt.event.*

public class Test3 {

public static void main(String args[]) {

new Test2()

}

}

class Test2 extends Frame {

TextField tf1,tf2

public Test2(){

tf1 = new TextField(5)

tf2 = new TextField(5)

add(tf1)

add(tf2)

setLayout(new FlowLayout())

setBounds(100,100,400,300)

addMouseMotionListener(new MouseMotionAdapter(){//鼠标移动事件的侦听器

public void mouseMoved(MouseEvent e) {//鼠标按键在组件上移动(无按键按下)时调用。

tf1.setText(e.getX()+"" )

tf2.setText(e.getY()+"" )

}

})

addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e) {

System.exit(0)

}

})

setVisible(true)

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11947560.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存