Jlist à sélection multiples, sélectionner les items par code

dmfdmf Messages postés 38 Date d'inscription mardi 10 novembre 2009 Statut Membre Dernière intervention 15 avril 2012 - 14 juil. 2011 à 10:18
dmfdmf Messages postés 38 Date d'inscription mardi 10 novembre 2009 Statut Membre Dernière intervention 15 avril 2012 - 16 juil. 2011 à 09:55
Bonjour à tous,

Actuellement, je sélection mes items de ma jlist à la souris et je récupère les items sélectionnés comme ça :
    Object[] ListeSelect = jListLignes.getSelectedValues();
 for( int i=0; i<ListeSelect.length; i++ ) {
         Object MaSelection = jListLignes.getSelectedValue();
         String  MonChoix MaSelection.toString();int valeur Integer.parseInt(MonChoix);
         selection = jListLignes.getSelectedIndex();
         valeur=valeur-1;
      try {
          String ligne=(String) List1.get(valeur);
            String deb = ligne.substring(0 ,4);
             ListModel.removeElementAt(selection);
                  if (deb.equals("lig,")) {
                   String[] c = ligne.split(",");
                    style c[0]; couleurTemp c[1]; Xdebut = c[2]; Ydebut = c[3]; Xfin = c[4]; Yfin = c[5];
                     List1.remove(valeur);List1.add(valeur, "lig,"+couleur+","+Xdebut+","+Ydebut+","+Xfin+","+Yfin);
                  }
                 if (deb.equals("arc,")) {
                    String[] c = ligne.split(",");
                    style c[0]; couleurTemp c[1]; Xdebut = c[2]; Ydebut = c[3]; Xfin = c[4]; Yfin = c[5];
                    Xcentre c[6]; Ycentre c[7];
                 List1.remove(valeur);List1.add(valeur, "arc,"+couleur+","+Xdebut+","+Ydebut+","+Xfin+","+Yfin+","+Xcentre+","+Ycentre);
                 }

           }catch (Exception err) {
               JOptionPane.showMessageDialog(null,"impossible de changer la ligne.");
                System.out.println(err);}
     }


je souhaiterai avoir la sélection des items par code, en gros :

1) je sélectionne une droite ou un arc sur mon canvas à l'aide de la souris (ok)
2) je récupère le numéro de cette droite ou de cet arc (ok)
3) je sélectionne ce même numéro dans la jlist (?)
4) ou comment l'ajouter à mon objet (?)
5) je rajoute une autre sélection, etc...
6) je traite tout les items de mon objet

une petite idée ?

Merci,

DMF

2 réponses

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
15 juil. 2011 à 18:53
Bonjour,

Je ne connais pas ton niveau en java, mais ce problème fait clairement appel il me semble au design pattern observer : l'observable est la droite et l'observer un item de la JList.

Si tu es débutant, il faudra trouver un moyen plus simple. Tu créé un objet droite et dedans, tu ajoutes un item de la liste et quand tu cliques sur la droite tu passes l'item à selected.

Bon courage
0
Rejoignez-nous