IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

Erreur lors du delete des chekbox item


Sujet :

AWT/Swing Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 76
    Points : 40
    Points
    40
    Par défaut Erreur lors du delete des chekbox item
    hello tout le monde,

    Alors ce qui se passe est super bizzare dans mon application. en faite j'ai un bouton run, quand je clique dessus la première fois, ça va me remplir une jcombobox par des valeur , quand je clique dessus une deuxième fois, il doit effacer les items présent dans la jcombobox et mettre de nouvelles valeur. Sauf que j'ai une erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    public void actionPerformed(ActionEvent e) {
    			
    	if(e.getSource()==PrincipleWindow.run){
    	
    		if(PrincipleWindow.products_comboBox.getItemCount()>0){
    			
    			System.out.println("yes"); 
    			PrincipleWindow.products_comboBox.setEnabled(false);
    			for(int i =0;i<PrincipleWindow.products_comboBox.getItemCount();i++){
    				PrincipleWindow.products_comboBox.removeItemAt(i);
    			}
    			 
    		}	
    		if(PrincipleWindow.products_comboBox.isEnabled()){
    			PrincipleWindow.products_comboBox.setEnabled(false);
    		}
    if(e.getSource()==PrincipleWindow.products_comboBox){
    		if(PrincipleWindow.products_comboBox.getComponentCount()>0){ 
    		System.out.println("le nombre d'élément est :" +PrincipleWindow.products_comboBox.getComponentCount());
    		String productName=PrincipleWindow.products_comboBox.getSelectedItem().toString();
    		   System.out.println(productName);
    		   Properties prop4 = new Properties();
    			try {
    				prop4.load(new FileInputStream("config/products.properties"));
    			} catch (Exception e1) {
    				e1.printStackTrace();
    			}
    		   DBUtils.PopulateTable(prop4.getProperty(productName),env.getDbUrl(),env.getDbUser(),env.getDbPass());
    
    		}
    	}
    
    }
    l'erreur pointe sur cette ligne exactement ( en rouge ). Ce que je ne comprends pas déja c'est pourquoi le code va piocher dans l'action associer à un select de la JCombobox alors que mois je clique sur le Run.

    Voici le code de l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
     
    Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    le nombre d'élément est :2
    	at com.treso.ca.view.Listener.actionPerformed(Listener.java:206)
    	at javax.swing.JComboBox.fireActionEvent(Unknown Source)
    	at javax.swing.JComboBox.contentsChanged(Unknown Source)
    	at javax.swing.AbstractListModel.fireContentsChanged(Unknown Source)
    	at javax.swing.DefaultComboBoxModel.setSelectedItem(Unknown Source)
    	at javax.swing.DefaultComboBoxModel.removeElementAt(Unknown Source)
    	at javax.swing.JComboBox.removeItemAt(Unknown Source)
    	at com.treso.ca.view.Listener.actionPerformed(Listener.java:70)
    	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    	at java.awt.Component.processMouseEvent(Unknown Source)
    	at javax.swing.JComponent.processMouseEvent(Unknown Source)
    	at java.awt.Component.processEvent(Unknown Source)
    	at java.awt.Container.processEvent(Unknown Source)
    	at java.awt.Component.dispatchEventImpl(Unknown Source)
    	at java.awt.Container.dispatchEventImpl(Unknown Source)
    	at java.awt.Component.dispatchEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    	at java.awt.Container.dispatchEventImpl(Unknown Source)
    	at java.awt.Window.dispatchEventImpl(Unknown Source)
    	at java.awt.Component.dispatchEvent(Unknown Source)
    	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    	at java.awt.EventQueue.access$000(Unknown Source)
    	at java.awt.EventQueue$1.run(Unknown Source)
    	at java.awt.EventQueue$1.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
    	at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
    	at java.awt.EventQueue$2.run(Unknown Source)
    	at java.awt.EventQueue$2.run(Unknown Source)
    	at java.security.AccessController.doPrivileged(Native Method)
    	at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
    	at java.awt.EventQueue.dispatchEvent(Unknown Source)
    	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    	at java.awt.EventDispatchThread.run(Unknown Source)
    Des idées ?

  2. #2
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Citation Envoyé par virus321 Voir le message
    application. en faite j'ai un bouton run, quand je clique dessus la première fois, ça va me remplir une jcombobox par des valeur
    franchement, je ne vois nulle part où tu remplis ton jcombo en cliquant sur le bouton run.

    quand je clique dessus une deuxième fois, il doit effacer les items présent dans la jcombobox
    pourquoi utiliser une boucle à la place d'un simple appel à la méthode removeAllItems() ?

    et mettre de nouvelles valeur.
    Là encore, je ne vois pas où tu mets ces nouvelles valeurs.
    Sauf que j'ai une erreur :
    sur cette ligne (en rouge), tu essaies de récupérer une valeur dans ton jcombo alors qu'il est vide.

    Commente un tout petit peu ton code peut être qu'on verra clair.
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 76
    Points : 40
    Points
    40
    Par défaut
    Je pense comprendre le problème mais je ne sais pas comment le résoudre :o

    En faite, j'ai l'impression que le removeallitems appelle un certain moment mon listener, pour apparament exécuter le rémove, et c'est la qu'il plante ! j'ai essayé une multitude de solution à savoir mettre un if null au début de mon code de mon listner, j'ai même supprimer le listener lié à ma combobox avant de faire le remove et je le remet juste après! mais toujours la même erreur ! quelqu'un aurait une solution ?

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Août 2010
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 76
    Points : 40
    Points
    40
    Par défaut
    Bonjour tout le monde,

    Bon j'ai résolu mon problème, le problème venait d'un mauvais listener ! au lieu d'implémenter le ChangeItemsListener j'ai implémenter le actionPerformed du coup mnt ça marche au tonner

    Merci bq de vos réponse

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] Erreur lors de conversion des macros vers VBA
    Par Lincoln911 dans le forum VBA Access
    Réponses: 4
    Dernier message: 10/04/2010, 20h34
  2. Erreur lors du génération des rapports
    Par RouRa22 dans le forum NetBeans
    Réponses: 0
    Dernier message: 19/10/2009, 10h58
  3. Erreur lors du delete en cascade
    Par nean_j dans le forum JPA
    Réponses: 2
    Dernier message: 15/10/2008, 12h20
  4. Erreur lors du formattage des dates
    Par Invité dans le forum ASP.NET
    Réponses: 1
    Dernier message: 02/06/2008, 15h31
  5. Réponses: 2
    Dernier message: 21/05/2006, 14h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo