Annuler une sélection

jarod34 Messages postés 9 Date d'inscription vendredi 8 février 2008 Statut Membre Dernière intervention 8 janvier 2010 - 7 janv. 2010 à 12:20
cormandyr Messages postés 600 Date d'inscription samedi 20 mai 2006 Statut Membre Dernière intervention 8 juillet 2016 - 25 janv. 2010 à 14:11
Bonjour,

J'ai un Jpanel dans lequel j'affiche des miniatures. Je peut les selectionner pour les renommers.

Mon problème c'est qu'une fois séléctionner il faut que je reclique dessus pour enlever la séléction. Ca devient très vite peut pratique lorsque je fait une longue selection de miniature.

Je voulais savoir si il existait un moyen de désactiver une selection d'image dans un Jpanel.
Ou peut ont activer les fonctions correspondant à la touche ECHAP par exemple. Si oui comment?

Merci d'avance pour votre aide

PY

3 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 130
7 janv. 2010 à 13:07
Salut,

Ben c'est à toi de le gérer... je vois mal comment un JPanel te permet de sélectionner des images, à moins que ca soit toi qui est fait le code pour... donc il te suffit de rajouter une fonctionnalités pour gérer la déselection.
______________________________________
DarK Sidious
0
jarod34 Messages postés 9 Date d'inscription vendredi 8 février 2008 Statut Membre Dernière intervention 8 janvier 2010
8 janv. 2010 à 13:46
Je ne suis pas l'auteur de tout ceci, et j'ai du mal à cerner l'endroit qui gère la sélection. (pas évident de reprendre quelque chose laissé en marche par quelqu'un d'autre ;) )

Je donne quand même le Jpanel concerné. Je pense que c'est ici que ça doit intervenir!

public class JpanelMiniature extends JPanel {

private JPanel panneau;
public ArrayList<Miniature> listMiniature;

public JpanelMiniature() {

listMiniature = new ArrayList<Miniature>();
GridLayout layout = new GridLayout(0, 6, 30, 30);
setLayout(layout);
LoweredBorder border = new LoweredBorder();
setBorder(border); 

}

public void selection() {
for (int i = 0; i < this.getComponentCount(); i++) {
Miniature m = (Miniature) getComponent(i);
m.setBorder(BorderFactory.createMatteBorder(2, 2, 2, 2, Color.lightGray));	
}
for (int i = 0; i < listMiniature.size(); i++) {
listMiniature.get(i).setBorder(BorderFactory.createMatteBorder(2, 2, 2, 2, Color.blue));
}
}


Help !!
0
cormandyr Messages postés 600 Date d'inscription samedi 20 mai 2006 Statut Membre Dernière intervention 8 juillet 2016 11
25 janv. 2010 à 14:11
comme ça je dirais que tu dois enlever l'élément que tu ne veux plus voir sélectionné de l'objet listMiniature et peut-être appeler par la suite la méthode selection() mais sans plus de certitude....

Lance ton application en mode debug et regarde comment est gèrer la sélection ainsi que la désélection...
0
Rejoignez-nous