Bild aus button + 2 bild wenn zeiger drauf ist

Viper2009

Erfahrenes Mitglied
Hi
Also ich brauche mal wieder eure hilfe.
Ich möchte wenn mein Mauszeiger auf das bild kommt das dan ein anderes bild geladen wird.

Hier ist mein code den ich benutze um das bild da zu stellen.

ImageIcon img = new ImageIcon(ClassLoader.getSystemResource("images/Information.gif"));
JLabel bild=new JLabel(img);
JPanel pan=new JPanel();
pan=(JPanel)this.getContentPane();
bild.setBounds(600,0,24,24);
pan.add(bild);

Hoffe ihr könnt mir helfen. DANKE
 
wenn ich das da mit anwende wie mache ich das den das er ein aneres bild anzeigt

JButton button = new JButton("myButton");
button.addMouseListener(new MouseListener()
{
public void mouseClicked(MouseEvent e)
{
//To change body of implemented methods use File | Settings | File Templates.
}

public void mousePressed(MouseEvent e)
{
//To change body of implemented methods use File | Settings | File Templates.
}

public void mouseReleased(MouseEvent e)
{
//To change body of implemented methods use File | Settings | File Templates.
}

public void mouseEntered(MouseEvent e)
{
setEnabled(false);
}

public void mouseExited(MouseEvent e)
{
//To change body of implemented methods use File | Settings | File Templates.
}
});
 
Moin,
einfach an geeigneter Selle dem JLabel mit setIcon(Icon i) ein neues/anderes (Image)Icon zuweisen.
 
Moin,
um ehrlich zu sein, ist für ein Rollover Effekt ein MouseMotionListener notwendig. Der normale MouseListener mit mouseClicked usw funktioniert nicht mit JLabel. ;)
 
Hallo!

Schau mal hier:
Code:
 /**
  * 
  */
 package de.tutorials;
 
 import java.awt.Dimension;
 import java.awt.Graphics;
 import java.awt.Image;
 import java.awt.event.MouseAdapter;
 import java.awt.event.MouseEvent;
 import java.awt.image.BufferedImage;
 import java.io.File;
 import java.io.IOException;
 
 import javax.imageio.ImageIO;
 import javax.swing.JFrame;
 import javax.swing.JPanel;
 
 /**
  * @author Tom
  * 
  */
 public class RolloverExample extends JFrame {
 
 	public RolloverExample() {
 		super("RolloverExample");
 		setDefaultCloseOperation(EXIT_ON_CLOSE);
 
 		add(new RolloverPanel(new File("c:/Sonnenuntergang.jpg"), new File(
 				"c:/Wasserlilien.jpg")));
 
 		pack();
 		setVisible(true);
 	}
 
 	/**
 	 * @param args
 	 */
 	public static void main(String[] args) {
 		new RolloverExample();
 	}
 
 	class RolloverPanel extends JPanel {
 
 		BufferedImage overImage, outImage;
 
 		boolean showOut = true;
 
 		public RolloverPanel(File overImage, File outImage) {
 			try {
 				this.overImage = ImageIO.read(overImage);
 				this.outImage = ImageIO.read(outImage);
 			} catch (IOException e) {
 				e.printStackTrace();
 			}
 
 			setPreferredSize(new Dimension(this.overImage.getWidth(),
 					this.overImage.getHeight()));
 
 			addMouseListener(new MouseAdapter() {
 				public void mouseEntered(MouseEvent e) {
 					showOut = false;
 					repaint();
 				}
 
 				public void mouseExited(MouseEvent e) {
 					showOut = true;
 					repaint();
 				}
 			});
 
 		}
 
 		protected void paintComponent(Graphics g) {
 			super.paintComponent(g);
 
 			Image img = showOut ? outImage : overImage;
 			g.drawImage(img, 0, 0, this);
 		}
 	}
 }

Gruß Tom
 
ahh danke, aber könntest du mir helfen das in dies zu machen

ImageIcon img = new ImageIcon(ClassLoader.getSystemResource("images/StarLin.n.gif"));
JLabel bild=new JLabel(img);
bild.setBounds(480,27,120,25);
pan=(JPanel)this.getContentPane();
pan.add(bild);
 
Zurück