Avatar billede kews Nybegynder
26. november 2002 - 13:43 Der er 5 kommentarer og
1 løsning

NullPointerException på JDesktop?

Hvorfor smider nedenstående en nullPointerException i linjen med :

desktop.add(iconLabel1);

Når filerne findes på HD og i rette bib og alle de rigtige ting er importeret...


import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import java.beans.PropertyVetoException;

public class Desktop extends JFrame {
   
    public static JDesktopPane desktop;
 
    public Desktop()
    {
        //Sætter overskriften i titel-baren
        super("Projekt 2002 - Vinter");
       
        //Sætter ikon i titel-bar, fil skal ligge i samme bibliotek
        ImageIcon image = new ImageIcon("glass1.jpg");
          this.setIconImage(image.getImage());
       
        ImageIcon icon1, icon2;

        icon1 = new ImageIcon("icon1.jpg");
        icon2 = new ImageIcon("icon2.jpg");

        JLabel iconLabel1 = new JLabel(icon1);
        JLabel iconLabel2 = new JLabel(icon2);
       
        desktop.add(iconLabel1);
        desktop.add(iconLabel2);
       
        //Detekter skærmstørrelsen og starter desktop'en op i venstre hjørne minus 50 pixels
        int inset = 0;
        Dimension skaermStoerrelse = Toolkit.getDefaultToolkit().getScreenSize();
        setBounds(inset, inset, skaermStoerrelse.width - inset*2, skaermStoerrelse.height - inset*2);
               
        //Afslutter programmet, når "krydset" trykkes
        addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });

        //Initialisere selve desktoppen
        desktop = new JDesktopPane();
        setContentPane(desktop);
             
        //Speeder farten på "dragging" op
        desktop.putClientProperty("JDesktopPane.dragMode", "outline");
       
        //Initialiserer Menu-baren, som kaldes gennem metoden 'lavMenu' nedenfor
        setJMenuBar(lavMenu());
    }
Avatar billede arne_v Ekspert
26. november 2002 - 13:52 #1
Nu er jeg ikke den store AWT/Swing ørn, men
er de 2 JPG-filer i default directory ?
Avatar billede dittmer Nybegynder
26. november 2002 - 14:45 #2
Du skal stadig have oprettet det opjekt, din statiske reference henviser til. Det er ikke en simpel variable, og derfor er din reference (desktop) null, indtil den gives en anden værdi...
Avatar billede javanewbie11 Nybegynder
26. november 2002 - 15:13 #3
Hvilken sti ligger dine images i?
Avatar billede arne_v Ekspert
26. november 2002 - 15:19 #4
dittmer har ret - du har
  desktop = new JDesktopPane();
efter:
  desktop.add(iconLabel1);
  desktop.add(iconLabel2);
Avatar billede kews Nybegynder
26. november 2002 - 19:22 #5
Tak for det drenge
Avatar billede dittmer Nybegynder
26. november 2002 - 22:14 #6
De rien...
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