# Bild aus button + 2 bild wenn zeiger drauf ist



## Viper2009 (29. Juli 2005)

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


----------



## Snape (29. Juli 2005)

Hi,
schau Dir mal MouseListener und MouseMotionListener an.


----------



## Viper2009 (29. Juli 2005)

aha und wie macht man das, den ich bin noch nicht so lange mit java vertraut.


----------



## Viper2009 (30. Juli 2005)

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.
            }
        });


----------



## Snape (31. Juli 2005)

Moin,
einfach an geeigneter Selle dem JLabel mit setIcon(Icon i) ein neues/anderes (Image)Icon zuweisen.


----------



## Viper2009 (31. Juli 2005)

mhh leichter gesagt als getan, will irgend wie nicht gehen.


----------



## Snape (1. August 2005)

Moin,
um ehrlich zu sein, ist für ein Rollover Effekt ein MouseMotionListener notwendig. Der normale MouseListener mit mouseClicked usw funktioniert nicht mit JLabel.


----------



## Viper2009 (1. August 2005)

aha, aber danke für deine hilfe werde mal weiter kucken.


----------



## Thomas Darimont (3. August 2005)

Hallo!

 Schau mal hier:

```
/**
  * 
  */
 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


----------



## Viper2009 (4. August 2005)

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);


----------



## infozeit (7. Dezember 2007)

gutes Beispiel, du bis geil,Thomas Darimont



Thomas Darimont hat gesagt.:


> Hallo!
> 
> Schau mal hier:
> 
> ...


----------

