# bilder werden  nicht angezeigt



## cedric1982 (21. Feb 2008)

Ich habe folgendes problem:

ich schreibe grad ein kleines java applet für eine homepage

wenn ich das applet im BlueJ Editor starte klappt alles wunderbar,
aber sobald ich es im internetexplorer versuche klappt fast alles, bis auf das, das die bilder und texte nicht angezeigt werden!


hier der code

smileys.class


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

public class smileys extends Applet implements MouseListener 
{ 
  Button Start; 
  inlove Window; 

  public void init() 
  { 
    setLayout(new BorderLayout()); 
    Start = new Button("InLove"); 
    Start.addMouseListener(this); 
    add(Start, BorderLayout.CENTER); 
    Window = new inlove(); 
  } 

  public void mouseReleased(MouseEvent ev) 
  { 
    Window.setVisible(true); 
  } 

  public void mousePressed(MouseEvent ev) { } 
  public void mouseEntered(MouseEvent ev) { } 
  public void mouseExited(MouseEvent ev) { } 
  public void mouseClicked(MouseEvent ev) { } 
}
```

inlove.class


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

public class inlove extends Frame implements  WindowListener 
{ 
  public inlove() 
  {   
    setTitle("InLove Smileys");  
    setLayout(new GridLayout(3, 2));
    setSize(280, 300);
    setBackground(Color.pink);
    addWindowListener(this); 
  } 
    public void paint(Graphics g)
    {
        Image img;
        img = getToolkit().getImage("img/sm_inlove_00.gif");
        g.drawImage(img,40,60,this);
        g.drawString("sm_inlove_00.gif",100,70);
        img = getToolkit().getImage("img/sm_inlove_01.gif");
        g.drawImage(img,40,90,this);
        g.drawString("sm_inlove_01.gif",100,100);
        img = getToolkit().getImage("img/sm_inlove_02.gif");
        g.drawImage(img,40,120,this);
        g.drawString("sm_inlove_02.gif",100,130);
        img = getToolkit().getImage("img/sm_inlove_03.gif");
        g.drawImage(img,40,150,this);
        g.drawString("sm_inlove_03.gif",100,160);
        img = getToolkit().getImage("img/sm_inlove_04.gif");
        g.drawImage(img,40,180,this);
        g.drawString("sm_inlove_04.gif",100,190);
        img = getToolkit().getImage("img/sm_inlove_05.gif");
        g.drawImage(img,40,210,this);
        g.drawString("sm_inlove_05.gif",100,220);
        img = getToolkit().getImage("img/sm_inlove_secret.gif");
        g.drawImage(img,40,240,this);
        g.drawString("sm_inlove_secret.gif",100,250);
    }
  

  public void mousePressed(MouseEvent ev) { } 
  public void mouseEntered(MouseEvent ev) { } 
  public void mouseExited(MouseEvent ev) { } 
  public void mouseClicked(MouseEvent ev) { } 

  public void windowClosing(WindowEvent ev) 
  { 
    setVisible(false); 
    dispose(); 
  } 

  public void windowActivated(WindowEvent ev) { } 
  public void windowClosed(WindowEvent ev) { } 
  public void windowDeactivated(WindowEvent ev) { } 
  public void windowDeiconified(WindowEvent ev) { } 
  public void windowIconified(WindowEvent ev) { } 
  public void windowOpened(WindowEvent ev) { } 
}
```


was habe ich falsch gemacht?????


Ausgabe im Internet-explorer








meine java konsole gibt mir folgenden fehler:

Exception in thread "AWT-EventQueue-2" java.security.AccessControlException: access denied (java.io.FilePermission img/sm_inlove_00.gif read)


----------



## L-ectron-X (21. Feb 2008)

Es ist bei Problemen mit Applets immer hilfreich, auch die Ausgabe deiner Java-Console zu posten.

Zum einen verwendest du den MouseListener für Button-Aktionen. Sicher, das geht auch, aber ein ActionListener ist für Buttons üblich.

Das Zweite ist, du lädst die Bilder falsch. Da du die Bilder über das Netz herunter laden willst, musst du die getImage()-Methoden von Applet benutzen (nicht die aus Toolkit), auch wenn du einen Frame zur Anzeige benutzen willst.

Hier mal ein Applet, mit Quellcode, das Bilder in Labels läd und anzeigt:
http://www.java-forum.org/de/userfiles/user1130/PictureApplet.html


----------



## Marco13 (21. Feb 2008)

cedric1982 hat gesagt.:
			
		

> was habe ich falsch gemacht?????


 :shock: Also. Richtig gemacht hast du schonmal, dass du die Frage hier gestellt hast. Und sonst....

Klassennamen schreibt man Groß
Variablennamen schreibt man klein
In der paint-Method sollte NUR gepaintet werden (und auf keinen Fall irgendwelche Bilder geladen)
Wenn man Bilder lädt, sollte man ggf. einen MediaTracker drumwickeln, damit sie vollständig geladen sind, wenn sie gezeichnet werden sollen
In einem Applet kann man Images AFAIK(!) nicht mit dem Toolkit laden, sondern ... http://java.sun.com/docs/books/tutorial/deployment/applet/data.html
Was du da mit dem MouseListener an dem Button machst, ist mir schleierhaft.... (http://java.sun.com/docs/books/tutorial/information/download.html,  " Creating a User Interface (AWT Only) Archive " (besser Swing verwenden!)


----------



## cedric1982 (21. Feb 2008)

hmmm kompliziert! ok ich geb zu das ich ein kompletter neuling bin! irgendwie versteh ich das ganze net so genau!

:-( heulz


kann mir vielleicht jemand mal etwas verständlich erklären (soll nix bösen heißen) wie ich das am einfachsten löse?
eventuell mit änderung des codes den ich gepostet habe??? *liebgugg*

ich habe mir den code zusammengebastelt aus verschiedenen beispielen! es funzt ja auch im editor aber leider net da wo ich das eigentlich haben will!


----------

