Avatar billede yallah Nybegynder
24. august 2001 - 11:35 Der er 8 kommentarer

Api Error hvad kan man gøre?

hej ved en del af mine applets får jeg denne error nå jeg vil compile dem

Note: test.java uses or overrides a deprecated API.
Note: Recompile with -deprecation for details.
1 error

Hvad mener den med det og hvad kan jeg gøre?


dette er f.eks et af de scripts jeg får det i..

import java.applet.*;
import java.awt.*;
public class test extends Applet {
Image image;
public void init() {
    image = getImage(getDocumentBase(),\"webcam.jpg\");
}
public void paint(Graphics g) {
    Rectangle r = bounds();
    g.draw.Image(image,0,0, r.width, r.height,this);
}
}
Avatar billede disky Nybegynder
24. august 2001 - 11:36 #1
Du anvender en metode som er forældet (deprecated)

Se java api\'en for at læs mere.

Eller compile med parameter -deprecation for at se hvad de nøjagtigt er.
Avatar billede kresten Nybegynder
24. august 2001 - 11:38 #2

Skriv javac -deprecation *.java

Så fortæller den hvilken linie det drejer sig om. Det betyder at der er lavet om i API\'et i den version af JDK\'et du bruger nu. Hvis du så kigger i dokumentationen og står den metode op som er deprecated, så vil der stå hvad du skal bruge istedet.
Avatar billede yallah Nybegynder
24. august 2001 - 11:49 #3
hmmm forstår ikke helt,.,,, har jeg brug for en nyere version af jdk? eller ?
Avatar billede yallah Nybegynder
24. august 2001 - 11:49 #4
test.java:12: warning: bounds() in java.awt.Component has been deprecated
        Rectangle r = bounds();
                      ^
test.java:13: cannot resolve symbol
symbol  : variable draw
location: class java.awt.Graphics
        g.draw.Image(image,0,0, r.width, r.height,this);
        ^
1 error
1 warning
Avatar billede disky Nybegynder
24. august 2001 - 11:59 #5
Du skal bruge
getBounds() istedet for bounds();


Altså:

import java.applet.*;
import java.awt.*;
public class test extends Applet
{
Image image;
public void init()
{
    image = getImage(getDocumentBase(),\"webcam.jpg\");
}
public void paint(Graphics g)
{
    Rectangle r = getBounds();
    g.draw.Image(image,0,0, r.width, r.height,this);
}
}


Avatar billede disky Nybegynder
24. august 2001 - 12:03 #6
den metode du vil bruge er forældet siden jdk 1.1 (lang tid siden)

Et godt sted at kigge er:
http://java.sun.com/j2se/1.3/docs/api/java/awt/Component.html#bounds()
Avatar billede yallah Nybegynder
24. august 2001 - 13:23 #7
ArgH skod har siddet og læst i en for gammel bog så!... hmmm

nu siger den error i

g.draw....

test.java:13: cannot resolve symbol
symbol  : variable draw
location: class java.awt.Graphics
        g.draw.Image(image,0,0, r.width, r.height,this);
1 error
Avatar billede kezzelski Nybegynder
26. august 2001 - 10:59 #8
den metode du søger er ikke
g.draw.Image(image,x,y,width,height,this)

men

g.drawImage(image,x,y,width,height,this)
!!!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester