Getion dynamique JCheckBox en java

[Fermé]
Signaler
Messages postés
75
Date d'inscription
jeudi 12 août 2010
Statut
Membre
Dernière intervention
5 juillet 2014
-
Bonjour à tous,j'ai un problème avec la gestion dynamique des Jcheckbox.Dans mon formulaire je m'en sert pour attribuer des droits aux users que je crée.La valeur du droit de l'utilisateur étant la combinaison des Jcheckbox cochés (il en existe 9 dan mon formulaire) c'est à dire 3 types de droits (Consultation,Création,Modification) pour 3 types d'actes (Naissance,Jugement,Mariage).chaque droit est consigné dans ma table user.Mon souci est de pouvoir retablir les droits, c'est à dire de recocher les cases initialement coché lors de la création lorsqu'on voudra modifier ce user.par exemple si la valeur d'un droit =7 on coche "A" "B" "C"sinon on coche "D" "E" "F" ainsi de suite pour toutes les combinaison possible.En ce moment je passe par plein de "IF",et ça ne marche pas tout à fait.Je me demandais s'il n'existait une façon de le faire en fonction de n'importe quelle combinaison de JchekBox coché.Merci de me repondre.
voici un bout de mon code :

if("Modifier".equals(CmdModifier.getText()))
        {
           CmdQuitter.setEnabled(true);
           annuler();     
           try {
                 Connection connection = DataBaseConnector.getConnection();
                 if (connection != null)     
                    {
                      boolean encore=rst.next();
                      if(encore)
                      { 
                        TxtNomUser.setText(rst.getString("NomUser"));//nom du user 
                        TxtMdp.setText(rst.getString("Pass"));//son pass
                         int admin= rst.getInt("Droit_Admin");
                         int naiss=rst.getInt("Acte_Naiss");
                         int juge=rst.getInt("Juge_Sup");
                         int mar=rst.getInt("Acte_Mar");
                          
                         if(admin!=0)
                         {
                           if(admin==7)
                           {
                             ChkDroitAdmin.setSelected(true);
                             ChkTousDroitGestion.setSelected(true);
                                          
                            }else
                              {
                                if(admin==3)
                                 {
                                   ChkDroitAdmin.setSelected(true); 
                                 }else
                                  {
                                    if(admin==4)
                                    {
                                      ChkTousDroitGestion.setSelected(true);
                                    }
                                  }
                               }
                             }
                             else{   
                                  if(naiss!=0)
                                   {
                                     if(naiss<4)
                                      {
                                        if(naiss==3)
                                         {
                                          ChkDroitConsActeNaissDeces.setSelected(true);
                                    ChkDroitCreerActeNaissDeces.setSelected(true);
                                                                                            }else
            {
             if(naiss==2)
             {
               ChkDroitCreerActeNaissDeces.setSelected(true);
                                                                                                }else
              {
                if(naiss==1)
                {
                  ChkDroitConsActeNaissDeces.setSelected(true);
                }
               }
             }
            }
       else
       {
       if(naiss==4)
       {
      ChkDroitModifActeNaissDeces.setSelected (true);                                                 
   }
else{
    if(naiss==5)
    {
     ChkDroitConsActeNaissDeces.setSelected(true);
     ChkDroitModifActeNaissDecessetSelected(true);
    }else
     {
     if(naiss==6)
     {
      ChkDroitCreerActeNaissDeces.setSelected(true);
      ChkDroitModifActeNaissDeces.setSelected(true);
     }else
      {
      if(naiss==7){
        ChkDroitConsActeNaissDeces.setSelected(true);
        ChkDroitCreerActeNaissDeces.setSelected(true);
        ChkDroitModifActeNaissDeces.setSelected(true);
               }                                                                        }
    }
   }
  }
 }           
}else
   {    /*Ainsi de suite pour chaque type d'acte*/
   }
Aussi avec ces if je ne peux cocher que des cases d'un seul type d'acte,si par exemple on accorde pour un meme user différents droits pour différents type d'acte,c'est à dire droit de(Consultat,création,modification)repectivement pour les types d'acte(Naissance,Jugement,Mariage)ça ne marche pas.Depuis maintenant 4 jrs je fait tout mais pas moyen d'y arriver.J'epère m'être fait comprendre?