# Probleme mit Applet



## pipeo (31. Aug 2003)

Hallo Leute,

ich bin gerade dabei mich mit Java etwas näher zu beschäftigen & hab auch - glaub ich - ein ganz vernünftiges Buch. Allerdigns hab ich ein Problem mit dem Applet mit dem ich mich gerade beschäftige. Ich benutze NetBeans 3.5 und der Code läuft durch den Debugger ohne Probleme, nur beim Start wird gesagt, dass das Applet nicht initialisiert wird! Und wenn ich es von Hand in eine Website einfüge, kommt 'Applet crashed'. Weiß jemand mit diesem Problem etwas anzufangen?

Hier ist der Code:


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

public class Appletpaint extends Applet {
    
    Graphics zeichenbereich;
    int last_x = 0;
    int last_y = 0;
    Color schriftfarbe = new Color(34, 56, 255);
    Button ClearButton;
    
    /** Initialization method that will be called after the applet is loaded
     *  into the browser.
     */
    public void init() {
        setBackground(Color.black);
        setForeground(schriftfarbe);
        ClearButton = new Button("Löschen");
        add(ClearButton);
        ClearButton.setSize(50, 50);
        ClearButton.setBackground(Color.blue);
        ClearButton.setForeground(Color.black);
      }
  
    public boolean mouseDown(Event theEvent, int x, int y) {
        last_x = x;
        last_y = y;
        return true;
    }
    
    public boolean mouseDrag(Event theEvent, int x, int y) {
        zeichenbereich = getGraphics();
        zeichenbereich.drawLine(last_x, last_y, x, y);
        last_x = x;
        last_y = y;
        return true;
    }
    
    public boolean action(Event evt, Object arg) {
        if (evt.target instanceof Button) {
            String Knopf = arg.toString();
            if (Knopf == "Löschen") {
                Graphics g = this.getGraphics();
                g.setColor(Color.white);
                g.fillRect(0, 0,  300, 300);
            }
        }
        return false;
    }
    
}
```

Vielen Dank für eure Hilfe

Grüße 

pipeo[/b]

*EDIT*: Code tags bitte nutzen


----------



## mariopetr (31. Aug 2003)

ueberpruefe mal, ob init() und start() vom browser aufgerufen werden


----------



## pipeo (31. Aug 2003)

wie mache ich das?

& außerdem funktioniert das ganze ja noch nicht mal nachdem NetBeans es kompiliert hat & automatisch startet...

Grüße

pipeo


----------



## mariopetr (31. Aug 2003)

hast du mal nen stacktrace


----------



## pipeo (31. Aug 2003)

wenn du mir sagst was das ist, geb ichs gern...

apropo wenn man am anfang

package Java;

hinschreibt funktionierts, was bedeutet das?????

Gruß

pipeo


----------



## Nobody (1. Sep 2003)

package heist, zu welchem packet das ganze gehört ist ua für objekorientiertesprogrammieren(oop) wichtig.

zum testen ob es aufgerufen wird, gibt es in manchen programmiertools einen debug modus. allgemein kannst du auch ein einfaches System.ou.println verwenden. lasse damit einfach eine meldung wie: die methode bla wird aufgerufen oder so ausgeben


----------



## DTR (1. Sep 2003)

Packages strukturieren deine Klassen. Man sollte Klassen, die inhaltlich zusammen gehören auch in das gleiche Package schreiben. So könnte man bei größeren Projekten zumbeispiel ein Package für alles was mit der Oberfläche zu tun hat erstellen, eines für alles was mit der Datenbank zu tun hat usw. Auf der Festplatte werden die Packages als ordner abgebildet. Also alles was im Quellcode package java stehen hat steht nachher im Ordner java. Alle Klassen in denen package java.gui steht liegen im Ordner java\gui.

PS: laut Java Konvesion sollen, zur besseren lesbarkeit, alle packages Kleingeschrieben werden.


----------

