28. oktober 2003 - 07:55Der er
17 kommentarer og 1 løsning
fejl i min applet
hvorfor er der fejl i min applet :(?
public class po extends java.applet.Applet { public void paint(java.awt.Graphics g) { g.drawString("Hello world!", 50, 25);
} public void init() { this.add (new textArea (,"hello" 5, 40)); this.add (new Textfield()); this.add (new java.awt.Button("encrypt")); this.add (new java.awt.Button("decrypt"));
}
} her er fejlmeldingen : po.java [8:1] illegal start of expression this.add (new textArea(, 5, 40)); ^ po.java [8:1] ')' expected this.add (new textArea(, 5, 40)); ^ 2 errors Errors compiling po.
po.java [8:1] cannot resolve symbol symbol : class textarea location: class po this.add (new textarea("hello", 5, 40)); ^ po.java [9:1] cannot resolve symbol symbol : class Textfield location: class po this.add (new Textfield()); ^ 2 errors Errors compiling po.
Betyder at paint() tager et argument af typen java.awt.Graphics som parameter Det betyder IKKE at du i paint() har importeret java.awt.*, men derimod kan du bruge objectet 'g'.
ser såen her ud nu: import java.awt.*; public class po extends java.applet.Applet { public void paint(java.awt.Graphics g) { g.drawString("Hello world!", 50, 25);
} public void init() { this.add (new java.awt.textarea("hello", 5, 40)); this.add (new java.awt.textfield()); this.add (new java.awt.Button("encrypt")); this.add (new java.awt.Button("decrypt"));
}
} og kommer med denne fejlmelding : po.java [9:1] cannot resolve symbol symbol : class textarea location: package awt this.add (new java.awt.textarea("hello", 5, 40)); ^ po.java [10:1] cannot resolve symbol symbol : class textfield location: package awt this.add (new java.awt.textfield()); ^ 2 errors Errors compiling po.
Det er fordi du gjorde det rigtigt inden du begyndte at tilføje TextArea og Button
Prøv at se hvad du selv har skrevet: this.add (new java.awt.Button("encrypt")); this.add (new java.awt.Button("decrypt"));
Du prefixer Button med java.awt., altså java.awt.Button derefter springer du over og gør sådan
this.add (new textArea (,"hello" 5, 40)); this.add (new Textfield());
Det kan også gøres, men kræver et import statement i toppen af *.java filen
Som soreno skriver, kan du gøre et af 2 ting
1.
public class po extends java.applet.Applet { public void paint(java.awt.Graphics g) { g.drawString("Hello world!", 50, 25);
} public void init() { this.add (new java.awt.TextArea (,"hello" 5, 40)); this.add (new java.awt.Textfield()); this.add (new java.awt.Button("encrypt")); this.add (new java.awt.Button("decrypt"));
ELLER 2.
import java.awt.*;
public class po extends java.applet.Applet { public void paint(Graphics g) { g.drawString("Hello world!", 50, 25);
} public void init() { this.add (new TextArea (,"hello" 5, 40)); this.add (new Textfield()); this.add (new Button("encrypt")); this.add (new Button("decrypt"));
btw tak for hjælpen soreno og carsten nu virker det ændeligt :)
Synes godt om
Ny brugerNybegynder
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.