non-static method create(int,int,int,int) cannot be referenced from a static context

Dieses Thema im Forum "Mac OS Entwickler, Programmierer" wurde erstellt von Jan-Michael, 31.05.2005.

  1. Jan-Michael

    Jan-Michael Thread Starter Mitglied

    Beiträge:
    391
    Zustimmungen:
    0
    Mitglied seit:
    28.02.2005
    Die Fehlermeldung: "non-static method create(int,int,int,int) cannot be referenced from a static context" ist das Ergebnis, dass ich erhalte, wenn ich das unten angeführte Codefragment mit dem Java-Compiler unter OS X compilieren will. Hat jemand von euch eine Antwort/Lösungsvorschlag für mein Problem?

    public void print2() {
    System.out.println("print2()-Methode geladen");
    Graphics g2 = Graphics.create(5,5, 200, 200);
    }

    Die Methode soll als Endprodukt eine Grafik aus einem Vorschauprogramm drucken. Dafür muss die Grafik zuerst an ein zweites Graphics-Objekt übergeben werden, dass nicht mit der Zeile: Graphics xyz = this.getGraphics(); initialisiert wird. Wenn es wie oben beschrieben initialisiert wird, legt der Java-Interpreter den MacOS X-Fensterlook über das Bild. Das einzigste, was dann ausgedruckt wird sind schwarz-graue Streifen. Deshalb habe ich auch schon versucht das auszudruckende Image-Objekt direkt an das Graphics-Object zu übergeben und es so zu initialisieren - als Resultat aber auch nur mit der selben Fehlermeldung. Was kann ich ändern?

    Ich wäre für jede Anregung dankbar, die mich ein Stück weiter an mein Ziel führt:)!!
     
  2. der_Kay

    der_Kay Mitglied

    Beiträge:
    1.687
    Zustimmungen:
    8
    Mitglied seit:
    02.09.2004
    Wie die Fehlermeldung schon sagt, ist der Aufruf
    Graphics.create(5,5, 200, 200);
    ungültig, weil die Methode nicht statisch ist. Wenn Du mit Graphics Objekten arbeiten willst, musst Du Dir eins zurückgeben lassen, etwa durch ein Objekt, das von java.awt.Component abgeleitet ist.

    etwa:

    // canvas = z.B. ein java.awt.Canvas
    Graphics g2 = canvas.getGraphics().create(5,5, 200, 200);
     
  3. Jan-Michael

    Jan-Michael Thread Starter Mitglied

    Beiträge:
    391
    Zustimmungen:
    0
    Mitglied seit:
    28.02.2005
    Super, danke für die schnelle Lösung. Jetzt funktioniert es!
     
Die Seite wird geladen...
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.