Portal > Foren > Java > Desktop-Applikationen und Grafik > JInternal Frame Fehler
Antwort
 
Themen-Optionen
Alt 22.12.2006, 22:49 Nach oben    #1
Benutzer
 
Registriert seit: 15.05.2006
Beiträge: 40
Standard JInternal Frame Fehler

Hi,

ich habe ein Problem was ich nicht beheben kann und auch nicht weiß woran es liegen könnte. habe semtliche tuts durch genommen habe auch alles so gemacht wie es dort steht und es passiert nichts.

Ich habe ein DesktopPane und adde mehrer InternalFrames. Das Problem ist das er nichts anzeigt außer ein Fehler.

PHP-Code:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at javax
.swing.JInternalFrame.show(JInternalFrame.java:1642)
        
at java.awt.Component.show(Component.java:1300)
        
at java.awt.Component.setVisible(Component.java:1253)
        
at javax.swing.JComponent.setVisible(JComponent.java:2535)
        
at clientContent.ClientList.initComponents(ClientList.java:51)
        
at clientContent.ClientList.<init>(ClientList.java:23)
        
at frames.AdminFrame.actionPerformed(AdminFrame.java:234)
        
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
        
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
        
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
        
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
        
at javax.swing.AbstractButton.doClick(AbstractButton.java:302)
        
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1000)
        
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1041)
        
at java.awt.Component.processMouseEvent(Component.java:5488)
        
at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
        
at java.awt.Component.processEvent(Component.java:5253)
        
at java.awt.Container.processEvent(Container.java:1966)
        
at java.awt.Component.dispatchEventImpl(Component.java:3955)
        
at java.awt.Container.dispatchEventImpl(Container.java:2024)
        
at java.awt.Component.dispatchEvent(Component.java:3803)
        
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
        
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
        
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
        
at java.awt.Container.dispatchEventImpl(Container.java:2010)
        
at java.awt.Window.dispatchEventImpl(Window.java:1774)
        
at java.awt.Component.dispatchEvent(Component.java:3803)
        
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
        
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
        
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
        
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
        
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
        
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110
asenodin ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.12.2006, 23:07 Nach oben    #2
Corvin Gröning
 
Benutzerbild von Corvin
 
Registriert seit: 19.03.2005
Ort: S-H | Flensburg
Beiträge: 449
Standard

http://java.sun.com/j2se/1.5.0/docs/...Exception.html
Zitat:
NullPointerException
Thrown when an application attempts to use null in a case where an object is required. These include:

* Calling the instance method of a null object.
* Accessing or modifying the field of a null object.
* Taking the length of null as if it were an array.
* Accessing or modifying the slots of null as if it were an array.
* Throwing null as if it were a Throwable value.

Applications should throw instances of this class to indicate other illegal uses of the null object.
Ansonsten.. zeig mal dein Code.
__________________
Corvin ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.12.2006, 23:29 Nach oben    #3
Benutzer
 
Registriert seit: 15.05.2006
Beiträge: 40
Standard

Einmal die Klasse wo ich Desktop Pane erstelle und InternalFrame aufrufe
PHP-Code:
/*
 * MainFrame.java
 *
 * Created on 28. November 2006, 20:12
 *
 */

package frames;

/**
 *
 * @author Gentleman
 *
 */

import java.awt.*;
import java.awt.event.*;
import java.awt.Component.*;
import clientContent.*;
import mealContent.*;
import javax.swing.*;
import helpContent.*;
import helpContent.*;
import mainDialog.*;
import java.io.*;
import java.net.*;

public class 
AdminFrame extends JFrame implements ActionListener {
    private 
JMenuBar menuB_main = new JMenuBar();
    
    private 
JMenu menu_data = new JMenu("Datei");
    private 
JMenuItem menuI_close = new JMenuItem("Schließen");
    private 
JMenuItem menuI_quit = new JMenuItem("Beenden");
    
    private 
JMenu menu_Client = new JMenu("Kunde");
    private 
JMenuItem menuI_clientList = new JMenuItem("Kunden Liste");
    private 
JMenuItem menuI_newClient = new JMenuItem("Kunde Neu");
    private 
JMenuItem menuI_changeClient = new JMenuItem("Kundenstamm");
    private 
JMenuItem menuI_searchClient = new JMenuItem("Kunde Suchen");
    
    private 
JMenu menu_Meal = new JMenu("Lebensmittel");
    private 
JMenuItem menuI_mealList = new JMenuItem("Lebensmittel Liste");
    private 
JMenuItem menuI_newMeal = new JMenuItem("Lebensmittel Neu");
    private 
JMenuItem menuI_changeMeal = new JMenuItem("Lebensmittelstamm");
    private 
JMenuItem menuI_searchMeal = new JMenuItem("Lebensmittel Suchen");
    
    private 
JMenu menu_search = new JMenu("Search");
    private 
JMenuItem menuI_sClient = new JMenuItem("Kunden");
    private 
JMenuItem menuI_sMeal = new JMenuItem("Lebensmittel");
    
    private 
JMenu menu_list = new JMenu("Listen");
    private 
JMenuItem menuI_lClient = new JMenuItem("Kundestamm");
    private 
JMenuItem menuI_lMeal = new JMenuItem("Nahrungstabelle");
    
    private 
JMenu menu_calc = new JMenu("Nährwertberechner");
    private 
JMenuItem menuI_newCalc = new JMenuItem("Neu");
    
    private 
JMenu menu_help = new JMenu("Hilfe");
    private 
JMenuItem menuI_faq = new JMenuItem("FAQ");
    private 
JMenuItem menuI_manual = new JMenuItem("Benutzerhandbuch");
    private 
JMenuItem menuI_contact = new JMenuItem("Kontakt");
    private 
JMenuItem menuI_about = new JMenuItem("About");
    
    private 
JLabel label_title = new JLabel();
    private 
JLabel label_status = new JLabel();
    private 
JLabel label_desc = new JLabel("Beschreibung");
    
    private 
JPanel panel_west = new JPanel();    
    private 
JPanel panel_east = new JPanel();
    private 
JPanel panel_south = new JPanel();
    private 
JPanel panel_center = new JPanel();
    
    private 
JDesktopPane desktop = new JDesktopPane();
    
    private 
JScrollPane jScrollPane1 = new JScrollPane();
    private 
JEditorPane txta_desc = new JEditorPane();
    
    private 
JEditorPane txta_welcome = new JEditorPane();    
    private 
JScrollPane jScrollPane11 = new JScrollPane();
    
    private 
JProgressBar progBar = new JProgressBar();
    
    private 
JInternalFrame internFrame = new JInternalFrame("Welcome"truetruetruetrue);
    
    private 
Dimension dim;
    
    private 
Welcome wel = new Welcome();    
    
     
/*
      * Creates a new instance of MainFrame      
      */
    
public AdminFrame(String name) {
        
setFrame();
        
setMenuBar();
        
setTitle(name);
    }
    
    public 
AdminFrame() {
        
setTitle("Ernährungsberater");
        
setMenuBar();
        
setFrame();        
    }
    
    
/**
     *Hier wird die Fenstergröße erstellt
     */
    
public void setFrameSize() {
        
dim Toolkit.getDefaultToolkit().getScreenSize();
        
setSize(dim.width 10dim.height 35);
        
setLocation( (dim.width getSize().width ) / 2,  (dim.heightgetSize().height) / 20);
    }
    
    public 
void setFrame() {
        
addWindowListener(new WindowAdapter() {
            public 
void windowClosing(WindowEvent we) {
                
System.exit(0); }});
                
                
setFrameSize(); 

//                setLayout(new BorderLayout());
                             
//                label_title.setFont(new Font("Arial", Font.ROMAN_BASELINE, 18));
//                label_title.setHorizontalTextPosition(SwingConstants.CENTER);
//                
//                panel_east.setLayout(new BorderLayout());
//                jScrollPane11.setViewportView(txta_welcome);
//                
//                jScrollPane1.setViewportView(txta_desc);
//                txta_desc.setEditable(false);
//                label_desc.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
//                panel_east.add(jScrollPane1);
//                panel_east.add(label_desc, BorderLayout.NORTH);
//                
//                panel_south.setLayout(new GridLayout(1,1));
//                panel_south.add(progBar, BorderLayout.SOUTH);
                
                
getContentPane().add(desktopBorderLayout.CENTER);
                
desktop.add(welJLayeredPane.DEFAULT_LAYER);
                             
//                txta_welcome.setEditable(false);
//                txta_welcome.setBorder(null);
//                internFrame.add(txta_welcome);
//                desktop.add(internFrame);
//                desktop.add(txta_welcome);              
                
//                add(desktop, BorderLayout.CENTER);
//                add(label_title, BorderLayout.NORTH);
//                add(panel_south, BorderLayout.SOUTH);
//                add(panel_east, BorderLayout.EAST);
    
}
    
    public 
void setMenuBar() {
        
setJMenuBar(menuB_main);
        
        
menuB_main.add(menu_data);
        
menu_data.add(menuI_close);
        
menuI_close.addActionListener(this);
        
menu_data.addSeparator();
        
menu_data.add(menuI_quit);
        
menuI_quit.addActionListener(this);
        
        
menuB_main.add(menu_Client);
        
menu_Client.add(menuI_newClient);
        
menuI_newClient.addActionListener(this);
        
menu_Client.add(menuI_clientList);
        
menuI_clientList.addActionListener(this);
        
menu_Client.add(menuI_changeClient);
        
menuI_changeClient.addActionListener(this);
        
        
menuB_main.add(menu_Meal);
        
menu_Meal.add(menuI_newMeal);
        
menuI_newMeal.addActionListener(this);
        
menu_Meal.add(menuI_mealList);
        
menuI_mealList.addActionListener(this);
        
menu_Meal.add(menuI_changeMeal);
        
menuI_changeMeal.addActionListener(this);
        
        
menuB_main.add(menu_calc);
        
menu_calc.add(menuI_newCalc);
        
menuI_newCalc.addActionListener(this);
        
        
menuB_main.add(menu_help);
        
menu_help.add(menuI_manual);
        
menuI_manual.addActionListener(this);
        
menu_help.add(menuI_faq);
        
menuI_faq.addActionListener(this);
        
menu_help.add(menuI_contact);
        
menuI_contact.addActionListener(this);
        
menu_help.add(menuI_about);
        
menuI_about.addActionListener(this);
        
        
/**
         * menuB_main.add(menu_list);
         * menu_list.add(menuI_newClient);
         * menuI_newClient.addActionListener(this);
         * menu_list.add(menuI_lMeal);
         * menuI_lMeal.addActionListener(this);
         */
        
        /**
         * menuB_main.add(menu_search);
         * menu_search.add(menuI_sClient);
         * menuI_sClient.addActionListener(this);
         * menu_search.add(menuI_sMeal);
         * menuI_sMeal.addActionListener(this);
         */
    
}
    
    private 
void clearPanelCenter() {
        
desktop.removeAll();
    }
    
    private 
void refreshPanelCenter() {
        
validate();
        
repaint();        
    }
    
    public 
void actionPerformed(ActionEvent ae) {
        
Object event ae.getSource();
        
        if(
event == menuI_newCalc) {
            
NewNutrientCalc nnc = new NewNutrientCalc();
            
desktop.add(nnc);    
        }
        
        if(
event == menuI_newClient) {
//            clearPanelCenter();
            
NewClient newC = new NewClient();
            
desktop.add(newCJLayeredPane.DEFAULT_LAYER);
        }
        
        if(
event == menuI_clientList) {
//            clearPanelCenter();
            
ClientList cl = new ClientList();
            
desktop.add(cl);
        }
        
        if(
event == menuI_changeClient) {
//            clearPanelCenter();
            
ClientChange cl = new ClientChange();
            
desktop.add(cl);
        }
        
        
        if(
event == menuI_manual) {
//            clearPanelCenter();
            
ReadMe rm = new ReadMe();
            
desktop.add(rm);
//            refreshPanelCenter();
        
}
        
        if(
event == menuI_mealList) {
//            clearPanelCenter();
            
MealList ml = new  MealList();
            
desktop.add(ml);
//            refreshPanelCenter();
        
}
        if(
event == menuI_newMeal) {
//            clearPanelCenter();
            
NewMeal nm = new  NewMeal();
            
desktop.add(nm);
//            refreshPanelCenter();
        
}
        
        if(
event == menuI_changeMeal) {
//            clearPanelCenter();
            
ChangeMeal cm = new  ChangeMeal();
            
desktop.add(cm);
//            refreshPanelCenter();
        
}
        
        if(
event == menuI_contact) {
//            clearPanelCenter();
            
Contakt co = new  Contakt();
            
desktop.add(co);
//            refreshPanelCenter();
        
}
        
        if(
event == menuI_about) {
//            clearPanelCenter();
            
About ab = new About();
            
desktop.add(ab);
//            refreshPanelCenter();
        
}
        
        if(
event == menuI_close) {
            
desktop.removeAll();
            
desktop.repaint();
        }
        
        if(
event == menuI_quit) {
            
System.exit(0);
        }
    }
    
    public static 
void main(String args[]) {
        
AdminFrame af = new AdminFrame();
        
af.setVisible(true);
    }

asenodin ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.12.2006, 23:35 Nach oben    #4
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.110
Standard

Das Problem liegt in der ClientList-Klasse, genauer gesagt in der initComponents-Methode.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.12.2006, 23:41 Nach oben    #5
Benutzer
 
Registriert seit: 15.05.2006
Beiträge: 40
Standard

was soll ich da jetzt machen? Ich meine das kann man doch beheben oder nicht?

PHP-Code:
private void initComponents() {
        
jScrollPane1 = new javax.swing.JScrollPane();
        
jTable1 = new javax.swing.JTable();
        
jPanel1 = new javax.swing.JPanel();
        
btn_print = new javax.swing.JButton();
        
jLabel1 = new javax.swing.JLabel();

        
getContentPane().setLayout(new java.awt.BorderLayout(12));

        
setClosable(true);
        
setIconifiable(true);
        
setMaximizable(true);
        
setResizable(true);
        
setTitle("Kundenstamm");
        
setDesktopIcon(null);
        
setMinimumSize(new java.awt.Dimension(800600));
        
setOpaque(false);
        
setPreferredSize(new java.awt.Dimension(800600));
        
setVisible(true);
        
jTable1.setModel(new javax.swing.table.DefaultTableModel(
            new 
Object [][] {
                {
nullnullnullnullnullnullnullnullnull}
            },
            new 
String [] {
                
"Kundennummer""Vorname""Nachname""Strasse""Postleitzahl""Wohnort""Telefonnummer""Handynummer""E-Mail Adresse"
            
}
        ) {
            Class[] 
types = new Class [] {
                
java.lang.Integer.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class
            };
            
boolean[] canEdit = new boolean [] {
                
falsefalsefalsefalsefalsefalsefalsefalsefalse
            
};

            public Class 
getColumnClass(int columnIndex) {
                return 
types [columnIndex];
            }

            public 
boolean isCellEditable(int rowIndexint columnIndex) {
                return 
canEdit [columnIndex];
            }
        });
        
jScrollPane1.setViewportView(jTable1);

        
getContentPane().add(jScrollPane1java.awt.BorderLayout.CENTER);

        
btn_print.setText("Drucken");
        
btn_print.addActionListener(new java.awt.event.ActionListener() {
            public 
void actionPerformed(java.awt.event.ActionEvent evt) {
                
btn_printActionPerformed(evt);
            }
        });

        
jPanel1.add(btn_print);

        
getContentPane().add(jPanel1java.awt.BorderLayout.SOUTH);

        
jLabel1.setFont(new java.awt.Font("Arial"018));
        
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
        
jLabel1.setText("Kundenliste");
        
getContentPane().add(jLabel1java.awt.BorderLayout.NORTH);

    }
// </editor-fold> 
das ist die methode. aber selbst wenn ich das nicht auswähle erscheint nichts.
asenodin ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 22.12.2006, 23:51 Nach oben    #6
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.110
Standard

Code:
setDesktopIcon(null);
Das da ist böse und mit Sicherheit nicht das, was du willst.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 23.12.2006, 11:08 Nach oben    #7
Benutzer
 
Registriert seit: 15.05.2006
Beiträge: 40
Standard

ja ganz toll wie bekomm ich das weg? man kann bei netbeans den code nicht verändern jedenfall nicht das was generiert wurde.

und außerdem besteht der fehler immer noch. es wird nicht hinzugefügt.

Geändert von asenodin (23.12.2006 um 11:11 Uhr).
asenodin ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 23.12.2006, 13:32