1

Salut tout le monde voila mon problème j’ai crée un jFrame ou j’affiche plusieurs JInternalFrame .dans l’une de JInternalFrame (IUEmploye) j’ai crée un jbutton, quand je click sure ce button une autre JInternalFrame (Detail) s’affiche et la première ce ferme, mais le problème c’est que
Actuellement Si Je vue faire l'inverse, a partir d'un button « B2» qui se trouve à JInternalFrame « Detail » je vue revenir à JInternalFrame « IUEmploye »

j'ai essayer cette Solution mais j'ai eu cette erreur :

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at projet.IUEmploye.jButton1ActionPerformed(TEST.java:90)
at projet.IUEmploye.access$000(IUEmploye.java:15)
at projet.IUEmploye$1.actionPerformed(IUEmploye.java:54)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
...

voici une parti du code des deux class IUEmploye et Detail

**************IUEmploye

import javax.swing.JDesktopPane;

publicclass IUEmploye extends javax.swing.JInternalFrame{

IUMenu menu;
Detail L;
public IUEmploye (){

initComponents();
}


public IUEmploye (IUMenu menu){
this.menu = menu;
try{
initComponents();
}

catch(SQLException ex){
System.out.println(ex.getMessage());
}

}
....

privatevoid jButton2ActionPerformed(java.awt.event.ActionEvent evt){
// TODO add your handling code here:

L = new Detail ();
menu.d.add(L);
try{


L.setSelected(true);
}
catch(PropertyVetoException ex){
Logger.getLogger(IUMenu.class.getName()).log(Level.SEVERE, null, ex);
}
L.setLocation(20, 10);
L.setVisible(true);
this.setVisible(false);


}

}

//******Detail


import java.beans.PropertyVetoException;

public class Detail extends javax.swing.JInternalFrame {
/** Creates new form Detail */
IUMenu m;
IUEmploye em;
public Detail () {

initComponents();

}
public Detail (IUMenu m) {

initComponents();

this.m = m;

}
private void B2(java.awt.event.ActionEvent evt) {

em = new IUEmploye ();

m.d.add(em);

try {

em.setSelected(true);

} catch (PropertyVetoException ex) {

}

em.setLocation(20, 10);
em .setVisible(true);
this.setVisible(false);

}


SVP si quelqu'un a une idée me la propose, je suis debutante en java et j'ai vraiment besoin de votre aide .
merci d'avance

2

Ben, l'exception est claire: l'objet que tu utilises dans la méthode projet.IUEmploye.jButton1ActionPerformed à la ligne 90 de TEST.java est null.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

3

Kevin Kofler (./2) :
Ben, l'exception est claire: l'objet que tu utilises dans la méthode projet.IUEmploye.jButton1ActionPerformed à la ligne 90 de TEST.java est null.


Vous pouvez me dire ce que je dois faire cvp

4

Bah, je ne sais pas, ça dépend de ton problème (et tu n'as pas posté le code en question!), peut-être rajouter un if (monobjet != null), mais ce n'est pas forcément la solution correcte.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

5

Kevin Kofler (./4) :
Bah, je ne sais pas, ça dépend de ton problème (et tu n'as pas posté le code en question!), peut-être rajouter un if (monobjet != null), mais ce n'est pas forcément la solution correcte.


bah Ce sont les deux classe IUEmploye, Detail ainsi que la class IUMenu voici le code

import java.beans.PropertyVetoException;
import java.sql.SQLException;
import javax.swing.JDesktopPane;

publicclass IUMenu extends javax.swing.JFrame{


JDesktopPane d;
IUEmploye e;
...
public


IUMenu(){
initComponents();
d= new JDesktopPane();
setContentPane(d);

}
...
privatevoid jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt){


e = new IUEmploye(this);

d.add(e);
try{

e.setSelected(true);
}catch(PropertyVetoException ex){
Logger.getLogger(IUMenu.class.getName()).log(Level.SEVERE, null, ex);
}
e.setLocation(10, 10);
e.setVisible(true);


}

....
}