13. januar 2001 - 22:46
Der er
3 kommentarer og 1 løsning
Image
denne klasse laver et BufferedImage til UI-laget, problemet er at man kun får en stor sort firkant i UI UI koden public void paint(Graphics g) { Fretboard s = new Fretboard(); g.drawImage(s.getFretboard(),100,200,this); } fretboad klassen der leverer billedet import java.awt.*; public class Fretboard { Graphics G; public static Image bufferimg; public Fretboard() { initComponents (); } private void initComponents () { G = bufferimg.getGraphics(); } public void update(Graphics g) { G.fillRect(0,0,200,200); //G.setColor(color); g = G; } public static Image getFretboard() { return bufferimg; } }
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
Slettet bruger
13. januar 2001 - 23:40
#1
Du har ikke initialiseret feltet \'bufferimg\'. Metoden \'initComponents\' vil kaste en nullpointer exception.
13. januar 2001 - 23:53
#2
gider du ikke at uddybe det
Slettet bruger
14. januar 2001 - 00:03
#3
I metoden \'paint()\' instantieres kaldes en constructor for Fretboard. Men denne constructor \'Fretboard()\' kalder \'initComponents()\'. Når man udfører linien \'G = bufferimg.getGraphics()\' og \'bufferimg\' er null, vil man få en fejl.
Slettet bruger
14. januar 2001 - 00:06
#4
Der skal nok stå noget a la: private void initComponents () { bufferimg = createImage(100,100); G = bufferimg.getGraphics(); }
Kurser inden for grundlæggende programmering