Avatar billede ng-km Nybegynder
26. februar 2002 - 23:40 Der er 4 kommentarer og
1 løsning

Tegnebord på JPanel

Jeg har lavet et tegnebord (.drawLine(..) osv) på et JPanel-objekt, og har placeret det på en JFrame. Tegnebordet skal være hvidt og JFrame'en skal være blå. Når jeg starter programmet, har tegnebordet imidlertid samme farve som JFrame'en indtil jeg begynder at tegne på det, så får det den farve jeg har defineret. Hvordan får jeg mit JPanel-objekt til at være hvidt fra starten når jeg åbner mit program ?

Avatar billede logical Nybegynder
28. februar 2002 - 08:23 #1
panel.setOpaque(true);
panel.setBackground(Color.white);

Lav dette, før du laver en setVisible(true) på din frame.
Avatar billede ng-km Nybegynder
02. marts 2002 - 00:11 #2
Til logical:
Det virker stadigvæk ikke. Koden ser som følger.

tegnebord = new Tegnebord(guiMainObservable, this);
tegnebord.setEnabled(true);
tegnebord.setBounds(100,35,675,477);
tegnebord.setOpaque(true);
tegnebord.setBackground(new Color(255,255,255));
tegnebord.setVisible(true);
getContentPane().add(tegnebord);

Kan det gøres anderledes?
Avatar billede logical Nybegynder
02. marts 2002 - 09:37 #3
Nu kan jeg ikke se dit tegnebord, men er du sikker på at størrelsen er sat korrekt. Jeg vil foreslå, at du tilføjer følgende til dit Tegnebord:

public Dimension getMinimumsize() {
  return new Dimension(300,300);
}
public Dimension getSize() {
  return getMinimumsize()
}
Og eventuelt kalder setSize(300,300) i din constructor.
Avatar billede ng-km Nybegynder
04. marts 2002 - 20:33 #4
Til logical:
Undskyld ventetiden!!!

Det virker desværre stadigvæk ikke.

Mit tegnebord er en klasse der extends JPanel, og bruges udelukkende til at tegne på vha paint(..), og en mouse-listener.

Tegnebordet skabes i Framens constructor som vist herover i min forrige kommentar.

Tegnebordet bliver hvidt i samme øjeblik jeg kalder update(Graphics g), men den metode kan jeg ikke kalde i Frame'ens constructor, for der er tegnebordets Graphics ikke skabt endnu, og det giver en nullPointerException hvis jeg prøver. (lød det meget forvirrende?)
Avatar billede ng-km Nybegynder
01. december 2002 - 12:02 #5
Svar
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