Java Applet Problem

Dieses Thema im Forum "Mac OS Entwickler, Programmierer" wurde erstellt von mcmonk, 12.07.2005.

  1. mcmonk

    mcmonk Thread Starter MacUser Mitglied

    Beiträge:
    211
    Zustimmungen:
    0
    Mitglied seit:
    18.09.2004
    Hi Leute,

    ich hab jetzt schon ne Zeit lang nichts mehr in Java programmiert und jetzt wollte ich, da ja bekanntlich Ferien sind, mich wieder reaktiveren in diesem Gebiet, zum Einstieg wollte ich kleines Applet schreiben a la "M$ Paint"

    Doch ich scheitere jedoch schon bei der Farbauswahl,... in meinen Augen müsste der Code stimmen, ich kann auch fehlerfrei compilieren,...

    Ich habs getestet unter Safari, Opera & Firefox... mein "appletviewer" im Terminal will nicht so richtig...

    Hier mal der Code
    Zitat::
    import java.applet.*;
    import java.awt.*;
    public class appletpaintosx extends Applet {
    Graphics zeichenbereich;
    Button clearbutton;
    Choice farbauswahl;
    Color zeichenfarbe=Color.black;

    int last_x, last_y;
    public void init() {
    setBackground (Color.white);
    setForeground (zeichenfarbe);
    // init Button
    clearbutton=new Button("Loeschen");
    add(clearbutton);
    clearbutton.setBackground (Color.lightGray);
    clearbutton.setForeground (Color.black);
    // Ende Button - Anfang Choice
    farbauswahl=new Choice();
    farbauswahl.addItem ("schwarz");
    farbauswahl.addItem ("blau");
    farbauswahl.addItem ("rot");
    farbauswahl.addItem ("gelb");
    farbauswahl.setBackground (Color.lightGray);
    farbauswahl.setForeground(Color.black);
    add (farbauswahl);
    // Ende Farbauswahl
    }

    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 Choice) {
    String Eintrag=arg.toString();
    if (Eintrag.equals("schwarz")) {
    zeichenfarbe=Color.black;
    }
    if (Eintrag.equals("blau")) {
    zeichenfarbe=Color.blue;
    }
    if (Eintrag.equals("rot")) {
    zeichenfarbe=Color.red;
    }
    if (Eintrag.equals("gelb")) {
    zeichenfarbe=Color.yellow;
    }
    }
    if (evt.target instanceof Button) { // Button-Löschen
    String Knopf=arg.toString();
    if (Knopf.equals("Loeschen")) {
    Graphics g=this.getGraphics();
    g.setColor(Color.white);
    g.fillRect (0,0,400,400);
    }
    }
    return false;
    }
    }


    Nun, mein Problem: Er ignoriert die Farbauswahl, wenn ich ne andere Farbe auswähle, bleibt er konstakt auf "schwarz" ...wo ist denn der Wurm?

    Danke für eure Hilfe..

    Bye
     
Die Seite wird geladen...

Diese Seite empfehlen