JCheckedBox et itemStateChanged

kungouf Messages postés 29 Date d'inscription lundi 3 mai 2004 Statut Membre Dernière intervention 15 février 2005 - 4 janv. 2005 à 15:32
cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 - 4 janv. 2005 à 17:37
bonjour j'ai 2 JCheckedBox et j'utilise la methode itemStateChanged afin de detecter le changement d'etat d'une check box.

mon probleme est le suivant : je detecte le click mais au lieu d'appliquer une seule fois la methode, elle s'applique 2 fois.

public void itemStateChanged( ItemEvent e )
{
if ( e.getSource() == servLogique )
{
if ( e.getStateChange() == ItemEvent.SELECTED )
{


((Composant)((MiddleWare)((SousApplication)FramePrincipale.tabSousApplication.get(nSsappli)).listeMiddleWare.get(nMiddle)).listeComposants.get(nComposant)).typeServeur = "serveurLogique";
fenetrePrincipale.createPackage(nomComposant, nssAppli, nMiddle, nComposant);

}
}
if ( e.getSource() == servPhysique )
{
if ( e.getStateChange() == ItemEvent.SELECTED )
{

((Composant)((MiddleWare)((SousApplication)FramePrincipale.tabSousApplication.get(nSsappli)).listeMiddleWare.get(nMiddle)).listeComposants.get(nComposant)).typeServeur = "serveurPhysique";
fenetrePrincipale.createServeurSansPackage(nomComposant, nssAppli, nMiddle, nComposant);

}

}
fenetrePrincipale.menuItemEnr.setEnabled(true);
}

1 réponse

cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 12
4 janv. 2005 à 17:37
;o) tu t embete bien moi j utilise l actionlistener pour les checked .. ;o)

Autrement ben c bete mais si ca passe 2 fois dedans et bien c est que l event est declencher 2 fois ;o) (et la pas forcement coton de trouver pkoi...) mais cela peut aussi etre parce que 2 object sont abonnés au au listener et que l'event impact ces 2 object ... ;o) la en regardant tu devrai trouver si c est cela .. ;o)

ceci dit ;o)
tu devrais plutot ecrire else if ( e.getSource() == servPhysique )

au lieu de if ( e.getSource() == servPhysique )
ce serai plus correct ;o) et efficasse mais bon c ton code héhé et ca marche qd meme... ;o)

gl

++

GodConan
0
Rejoignez-nous