Gå til innhold

Problemer med bakgrunnsfarge


Anbefalte innlegg

Jeg klarer ikke å få noen bakgrunnsfarge til dette programmet, det blir bare hvitt. Derimot funker alt det andre. Det som også er merkelig er at koden er kopiert rett fra CD'en som fulgte med læreboka. Jeg har prøvd med flere farger, ikke bare cyan. Noen som vet hva som kan være galt?

 

import javax.swing.JApplet;

import java.awt.*;

 

 

public class Snowman extends JApplet

{

//-----------------------------------------------------------------

// Draws a snowman.

//-----------------------------------------------------------------

public void paint (Graphics page)

{

final int MID = 150;

final int TOP = 50;

 

setBackground (Color.cyan);

 

page.setColor (Color.blue);

page.fillRect (0, 175, 300, 50); // ground

 

page.setColor (Color.yellow);

page.fillOval (-40, -40, 80, 80); // sun

 

page.setColor (Color.white);

page.fillOval (MID-20, TOP, 40, 40); // head

page.fillOval (MID-35, TOP+35, 70, 50); // upper

page.fillOval (MID-50, TOP+80, 100, 60); // lower

 

page.setColor (Color.black);

page.fillOval (MID-10, TOP+10, 5, 5); // left eye

page.fillOval (MID+5, TOP+10, 5, 5); // right eye

 

page.drawArc (MID-10, TOP+20, 20, 10, 190, 160); // smile

 

page.drawLine (MID-25, TOP+60, MID-50, TOP+40); // left arm

page.drawLine (MID+25, TOP+60, MID+55, TOP+60); // right arm

 

page.drawLine (MID-20, TOP+5, MID+20, TOP+5); // brim of hat

page.fillRect (MID-15, TOP-20, 30, 25); // top of hat

}

}

Endret av Donald__Duck
Lenke til kommentar
Videoannonse
Annonse

Det fungerte fint, takk for tipset. Men skulle likevel ønsket at setBackground-funksjonen fungerte. Noe annet jeg lurer på er når jeg holder musepekeren over ordet Snowman, da kommer Eclipse opp med meldingen "The serializable class Snowman does not declare a static final serialVersionUID field of type long". I tillegg er det et ikon med en lyspære og et utropstegn i margen, hvor samme melding kommer opp når jeg holder musepekeren over. Hva betyr dette, kan det ha sammenheng med at setBackground-funksjonen ikke virker?

Lenke til kommentar

Nei, det har ingenting med setBackground() å gjøre.

 

Grunnen til at du får den advarselen, er fordi et sted oppe i hierarkiet, implementerer JApplet Serializable.

 

Du kan enten velge å ignorere det, eller legge til denne linjen et eller annet sted i klassen din:

private static final long serialVersionUID = xxxxxxxL;

Hvor xxxxxx er et tilfeldig valgt tall.

 

Hvis du velger å ignorere det, kan du gå inn i Eclipse for å få den til å slutte å advare deg sånn her:

Window -> Preferences -> Java -> Compiler -> Errors/Warnings -> Potential programming problems -> Serializable class without serialVersionUID -> Ignore

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...