# Bilder einfügen



## BlackDaddy (27. Jan 2007)

Hallo, weiß selber das es hier irgendwo bestimmt stehen muss, aber ich find es net. 

Möchte in meiner Class gui ein Bild einbinden. 


```
import java.awt.*;
import java.awt.event.*;

public class Gui extends Frame implements ActionListener
{
	private Button btnMZ=new Button(".:: Mehrzinssparbuch ::.");
	private Button btnCash=new Button(".:: VR Cash ::.");


	/*private Button =new Button(".::  ::.");
	private Button =new Button(".::  ::.");
	private Button =new Button(".::  ::.");
	private Button =new Button(".::  ::.");
	*/
	
	//Konstruktor
	public Gui()
	{

	//Fenster
		this.setTitle("VR Bank HessenLand eG");
		this.setBounds(50,50,800,600);
		this.setLayout(null);
		this.setBackground(Color.white);

	//Panel
		MenuBar dieMenuezeile = new MenuBar();
		
		Menu dateiMenue = new Menu(".:: Datei ::.");
		dieMenuezeile.add(dateiMenue);
			MenuItem startpage=new MenuItem(".:: Startpage ::.");
			startpage.addActionListener(this);
		dateiMenue.add(startpage);
		dateiMenue.addSeparator();
			MenuItem beenden=new MenuItem(".:: Beenden ::.");
			beenden.addActionListener(this);
		dateiMenue.add(beenden);
		
		Menu produkteMenue = new Menu(".:: Produkte ::.");
		dieMenuezeile.add(produkteMenue);
			MenuItem cash=new MenuItem(".:: VR Cash ::.");
			cash.addActionListener(this);
			MenuItem mz=new MenuItem(".:: Mehrzins Sparbuch ::.");
			mz.addActionListener(this);
			MenuItem wz=new MenuItem(".:: Wachstumsparen ::.");
			wz.addActionListener(this);
			MenuItem zsp=new MenuItem(".:: Zielsparplan ::.");
			zsp.addActionListener(this);
		produkteMenue.add(cash);
		produkteMenue.add(mz);
		produkteMenue.add(wz);
		produkteMenue.add(zsp);
		
		Menu vergleichMenue = new Menu(".:: Produkte Vergleich ::.");
		dieMenuezeile.add(vergleichMenue);	
			MenuItem cash_mz=new MenuItem(".:: VR Cash/Mehrzins ::.");
		vergleichMenue.add(cash_mz);
		
		
		this.setMenuBar(dieMenuezeile);
		
		
		
	//Schließen Button
		this.addWindowListener( new windowclose() );
	}
	
	
	
	//Action
	public void actionPerformed(ActionEvent e)
	{
		String auswahl = e.getActionCommand();
		
		if(auswahl.equals(".:: Beenden ::."))
		{
			System.exit(0);	
		}
		
		if(auswahl.equals(".:: Startpage ::."))
		{
			this.startpage();
		}
		
		if(auswahl.equals(".:: VR Cash ::."))
		{
			CashDialog myCashDialog = new CashDialog(this, "..:: VR Cash",true);
			myCashDialog.setVisible(true);	
		}
		
		
	}

	public void startpage()
	{
		btnMZ.setBounds(this.getWidth()/2-125-125,250,200,75);
		btnMZ.addActionListener(this);
		this.add(btnMZ);
		
		btnCash.setBounds(this.getWidth()/2+125-125,250,200,75);
		btnCash.addActionListener(this);
		this.add(btnCash);
		
		
	}




	//Paint Methode
	public void paint(Graphics g) 
	{
		g.drawString(this.getWidth()+"", 10, 75);

	}
	
	
}
```


kann mir jemand sagen wie ich das jetzt mache? Bin echt am verzweifeln weils net klappt, das bild liegt im selben verzeichnis wie die class/java files.

Danke schon mal


----------



## unknown_member (27. Jan 2007)

Was für ein Bild willst du, ein BufferedImage oder ein ImageIcon, dass man auf JButtons "kleben" kann?


----------



## BlackDaddy (27. Jan 2007)

ich möchte ein .jpg in einer bestimmten größe auf die gui bringen, die man bei bedarf auch wieder weg blenden kann


----------



## unknown_member (27. Jan 2007)

also ein BufferedImage.

So gehts:


Deklarieren:


```
BufferedImage             cool;
```


Danach:


```
cool = new ImageIcon( "coolie.jpg" );
```


Zeichnen:


```
public void paint(Graphics g) {
    super.paint(g);
    g.drawImage(cool, x, y, this);
   }
```



____
MfG, unknown_member


----------



## Guest (27. Jan 2007)

da meldet der compiler inkompatible types


----------



## Guest (27. Jan 2007)

da gibt es einen konflikt zwischen BufferedImage und ImageIcon


----------



## The_S (27. Jan 2007)

Ja gibt es. schreibe statt cool = new ImageIcon einfach


```
BufferedImage cool = ImageIO.read(new File("coolie.jpg"));
```

Einfacher sollte das jedoch gehen indem du dein Bild auf einem JLabel darstellst und dieses einfach zur GUI addest:


```
JLabel pic = new JLabel();
pic.setIcon(new ImageIcon("coolie.jpg"));
```


----------



## Guest (27. Jan 2007)

super, das bild wird jetzt korrekt angezeigt, eine frage hääte ich jedoch noch, wenn man die gröse des fensters nun ändert wird das bild zwar neu geladen, jedoch wird das vorherige nicht entfertn vorher, wie mach ich das?


----------



## The_S (27. Jan 2007)

zeig mal code


----------



## Guest (27. Jan 2007)

```
import java.awt.*;
import java.awt.event.*;
import java.awt.Image.*;
import java.awt.image.BufferedImage;
import javax.swing.ImageIcon;
import java.io.*;
import javax.imageio.ImageIO;



public class Gui extends Frame implements ActionListener
{
	//Logo
	private BufferedImage banner; 

	
	//Allgemein
	private String befehlspuffer=new String(".:: Startpage ::.");
	private Button btnZurueck=new Button(".:: Berechnen ::.");
	private Button btnBerechnen=new Button(".:: Zurücksetzen ::.");
	private TextField betragTxtField=new TextField("5000");
	private Label betragLabel=new Label("Anlagebetrag:");
	private Label zinsenLabel=new Label("Zinsen jährlich:");
	//Startpage
	
	private Button btnMZ=new Button(".:: Mehrzinssparbuch ::.");
	private Button btnCash=new Button(".:: VR Cash ::.");
	private Button btnZSP=new Button(".:: Zielsparplan ::.");
	private Button btnWZ=new Button(".:: Wachstumssparen ::.");
	
	//Cash
	
	private Label cashZinssatzLabel=new Label("Zinssatz:");
	private Label cashZinsenbetragLabel=new Label();
	

	/*private Button =new Button(".::  ::.");
	private Button =new Button(".::  ::.");
	*/
	
	//Konstruktor
	public Gui()
	{

	//Fenster
		this.setTitle("VR Bank HessenLand eG");
		this.setBounds(50,50,800,600);
		this.setLayout(null);
		this.setBackground(Color.white);

	//Panel
		MenuBar dieMenuezeile = new MenuBar();
		
		Menu dateiMenue = new Menu(".:: Datei ::.");
		dieMenuezeile.add(dateiMenue);
			MenuItem startpage=new MenuItem(".:: Startpage ::.");
			startpage.addActionListener(this);
		dateiMenue.add(startpage);
			MenuItem startpageDisable=new MenuItem(".:: Startpage ausschalten ::.");
			startpageDisable.addActionListener(this);
		dateiMenue.add(startpageDisable);
		dateiMenue.addSeparator();
			MenuItem beenden=new MenuItem(".:: Beenden ::.");
			beenden.addActionListener(this);
		dateiMenue.add(beenden);
		
		Menu produkteMenue = new Menu(".:: Produkte ::.");
		dieMenuezeile.add(produkteMenue);
			MenuItem cash=new MenuItem(".:: VR Cash ::.");
			cash.addActionListener(this);
			MenuItem mz=new MenuItem(".:: Mehrzins Sparbuch ::.");
			mz.addActionListener(this);
			MenuItem wz=new MenuItem(".:: Wachstumsparen ::.");
			wz.addActionListener(this);
			MenuItem zsp=new MenuItem(".:: Zielsparplan ::.");
			zsp.addActionListener(this);
		produkteMenue.add(cash);
		produkteMenue.add(mz);
		produkteMenue.add(wz);
		produkteMenue.add(zsp);
		
		Menu vergleichMenue = new Menu(".:: Produkte Vergleich ::.");
		dieMenuezeile.add(vergleichMenue);	
			MenuItem cash_mz=new MenuItem(".:: VR Cash/Mehrzins ::.");
		vergleichMenue.add(cash_mz);
		
		
		this.setMenuBar(dieMenuezeile);
	//BAnner
	try
	{
		banner=ImageIO.read(new File("hessenland.jpg"));
	}
	catch(Exception e)
	{
		System.out.println("Fehler Banner");
		
	}

		
	//Schließen Button
		this.addWindowListener( new windowclose() );
		
	//Startpage
	this.startpage();
	}
	
	//Action
	public void actionPerformed(ActionEvent e)
	{
		
		
		String auswahl = e.getActionCommand();
		
		if(auswahl.equals(".:: Beenden ::."))
		{
			System.exit(0);	
		}
		
		if(auswahl.equals(".:: Startpage ::."))
		{
			if(befehlspuffer.equals(".:: Startpage ::."))
			{
				this.startpageDisable();
			}
			if(befehlspuffer.equals(".:: VR Cash ::."))
			{
				this.vrCashDisable();
			}
			if(befehlspuffer.equals(".:: Mehrzinssparbuch ::."))
			{
				
			}
			if(befehlspuffer.equals(".:: Zielsparplan ::."))
			{
				
			}
			if(befehlspuffer.equals(".:: Wachstumssparen ::."))
			{
				
			}
	
			this.startpage();
		}
		
		if(auswahl.equals(".:: Startpage ausschalten ::."))
		{
			this.startpageDisable();
		}
		
		if(auswahl.equals(".:: VR Cash ::."))
		{
			if(befehlspuffer.equals(".:: Startpage ::."))
			{
				this.startpageDisable();
			}
			if(befehlspuffer.equals(".:: VR Cash ::."))
			{
				this.vrCashDisable();
			}
			if(befehlspuffer.equals(".:: Mehrzinssparbuch ::."))
			{
				
			}
			if(befehlspuffer.equals(".:: Zielsparplan ::."))
			{
				
			}
			if(befehlspuffer.equals(".:: Wachstumssparen ::."))
			{
				
			}
			
			this.vrCash();
		}
		
		if(auswahl.equals(".:: Mehrzinssparbuch ::."))
		{
			this.vrCash();
		}
		
		
		if(auswahl.equals(".:: Zielsparplan ::."))
		{
			
		}
		
		if(auswahl.equals(".:: Wachstumssparen ::."))
		{
			
		}
		
		
		
		befehlspuffer=e.getActionCommand();
	}

	public void startpage()
	{
		btnMZ.setBounds(this.getWidth()/2-125-125,150,200,75);
		btnMZ.addActionListener(this);
		this.add(btnMZ);
		
		btnCash.setBounds(this.getWidth()/2+125-125,150,200,75);
		btnCash.addActionListener(this);
		this.add(btnCash);
		
		btnWZ.setBounds(this.getWidth()/2-125-125,300,200,75);
		btnWZ.addActionListener(this);
		this.add(btnWZ);
		
		btnZSP.setBounds(this.getWidth()/2+125-125,300,200,75);
		btnZSP.addActionListener(this);
		this.add(btnZSP);
		
		btnMZ.setVisible(true);
		btnCash.setVisible(true);
		btnWZ.setVisible(true);
		btnZSP.setVisible(true);
		
	}

	public void startpageDisable()
	{
		btnMZ.setVisible(false);
		btnCash.setVisible(false);
		btnWZ.setVisible(false);
		btnZSP.setVisible(false);
	}

	public void vrCash()
	{
		betragLabel.setBounds(this.getWidth()/2-100-50,150,100,20);
		this.add(betragLabel);
		betragLabel.setVisible(true);
		
		betragTxtField.setBounds(this.getWidth()/2,150,100,20);
		this.add(betragTxtField);
		betragTxtField.setVisible(true);
		
		zinsenLabel.setBounds(this.getWidth()/2-100-50,250,100,20);
		this.add(zinsenLabel);
		zinsenLabel.setVisible(true);
	}

	public void vrCashDisable()
	{
		zinsenLabel.setVisible(false);
		betragTxtField.setVisible(false);
		betragLabel.setVisible(false);
	}
	
	
	//Paint Methode
	public void paint(Graphics g) 
	{
		super.paint(g); 
		g.drawImage(banner, 1, 15, this); 

		g.drawString(this.getWidth()+"", 10, 75);
		g.setColor(Color.blue);
	
	}
	
	
}
```


----------



## Guest (27. Jan 2007)

vergiss das letzte, ist ne ältere version , muss die neue suchen , habs mit viel pech überschrieben


----------



## kivver (17. Nov 2007)

Kann ich damit auch .gif-Dateien einfügen???

wenn ja wie?


----------



## Quaxli (17. Nov 2007)

Ersetze bild1.jpg durch bild2.gif - fertig


----------

