n 编写一个Applet,将其所在区域分成大小相等的2X2块,分别装入四幅图片,鼠标进入哪个区域,就在该区域显示一幅图片,移出后则不显示图片
[此贴子已经被作者于2006-2-26 20:30:05编辑过]
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class Load extends JApplet implements MouseListener {
private JPanel jp1,jp2,jp3,jp4;
private JLabel jl1;
private Container c;
public void init(){
jp1=new JPanel();
jp2=new JPanel();
jp3=new JPanel();
jp4=new JPanel();
jp1.addMouseListener(this);
jp2.addMouseListener(this);
jp3.addMouseListener(this);
jp4.addMouseListener(this);
jl1=new JLabel(new ImageIcon("sohu.gif"));
this.setLayout(new GridLayout(2,2));
c=this.getContentPane();
c.add(jp1);
c.add(jp2);
c.add(jp3);
c.add(jp4);
c.setBackground(Color.WHITE);
}
public void mouseEntered(MouseEvent e){
JPanel j=(JPanel)e.getSource();
j.add(jl1);
SwingUtilities.updateComponentTreeUI(this);
}
public void mouseExited(MouseEvent e){
JPanel j=(JPanel)e.getSource();
j.removeAll();
SwingUtilities.updateComponentTreeUI(this);
}
public void mousePressed(MouseEvent e){}
public void mouseReleased(MouseEvent e){}
}
这里是只用了一幅图,四幅图的你自己去做吧
只要在鼠标处理事件中加入相应的代码就可以了
先判断是哪个JPanel发出的事件,然后针对不同的JPanel装入不同的图片就可以实现了