Portal > Foren > Java > Desktop-Applikationen und Grafik > JInternal Frame Fehler
Antwort
 
LinkBack Themen-Optionen Thema durchsuchen
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: 464
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.365
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.365
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 Nach oben    #8
Benutzer
 
Registriert seit: 24.10.2006
Beiträge: 90
Standard

Zitat:
man kann bei netbeans den code nicht verändern jedenfall nicht das was generiert wurde.
Doch. Öffne einfach das File mit einem anderen Editor. Du wirst dann sehen, dass Netbeans nur ein

Code:
// <editor-fold defaultstate="collapsed" desc="Generated Code">
GUI Designer Code
//</editor-fold>

gesetzt hat. In einer Textdatei kann man nämlich keine bestimmten Teile schützen

MfG Byrel
Byrel ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 23.12.2006, 17:05 Nach oben    #9
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.365
Standard

Hmm... könnte es damit zusammenhängen, dass du zuerst das InternalFrame sichtbar machst und es dann zur JDesktopPane hinzufügst?

Also ich stocher auch nur im dunkeln. Kannst du vielleicht mal versuchen, da mit'm debugger dran zu gehen? Oder mir wenigstens sagen, welche Java-Version du benutzt?
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 24.12.2006, 11:46 Nach oben    #10
fka Gottzilla
 
Benutzerbild von The_S
 
Registriert seit: 02.02.2005
Ort: Würzburg
Beiträge: 753
Standard

Crossposting ... in einem anderen Forum ist das Problem längst gelöst. Da kann man wenigstens mal aufklären, dass das Problem gelöst ist!

http://www.java-forum.org/de/viewtop...er=asc&start=0
The_S ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 24.12.2006, 13:50 Nach oben    #11
Benutzer
 
Registriert seit: 15.05.2006
Beiträge: 40
Standard

joooo danke,

wollte halt schnell eine antwort haebn
asenodin ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 26.12.2006, 23:56 Nach oben    #12
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.365
Standard

Weil die Größe fehlt gibts ne NPE? Nicht übel... da wäre ich nicht drauf gekommen.

Übrigens: Wenn du, statt zu Cross-Posten, meiner Aufforderung gefolgt wärst, und mir deine JDK-Version mitgeteilt hättest, hätte ich im JDK-Quellcode nachsehen und da vielleicht ne Lösung finden können. ;)
Das wiederum ist aber auch ne Sache, die du selbst hättest tun können.
pago ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Seltsamer Fehler ... Basti PHP-Programmierung 3 29.05.2007 17:50
Externe Klassen Panel's in einen Frame anzeigen asenodin Desktop-Applikationen und Grafik 3 04.12.2006 01:30
Fehler im PHP Parser oder lag der Fehler doch bei mir? Prophet PHP-Programmierung 4 12.05.2006 17:17
Via htaccess alle Fehler umleiten ? robo47 Tools, Server, Betriebssysteme 10 03.01.2006 07:00
fehler am server oder fehler am script vodan PHP-Programmierung 26 23.05.2005 00:28


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:13 Uhr.


Powered by vBulletin® Version 3.8.4 (Deutsch)
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.3.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47