Java Swing - Combo

Java Swing - Combo - Java - Programmation

Marsh Posté le 27-05-2006 à 09:56:47    

Bonjour,
 
je suis en train de réaliser une petite application dans le but de la
présenter à mon exam. Cette petite application est un convertisseur de
devises. Je dispose d'une combo contenant la liste des devises (j'ai
créer une classe devise et je rempli un vector que j'ajoute ensuite à
la combo). Le dernier élément de la combo est "Autres ...". Lorsque
l'utilisateur sélectionne "Autre..." la combo disparait et fait place à
une zone de saisie. L'utilisateur peu donc saisir une nouvelle devise  
qui n'existe pas dans la combo. Après avoir saisie sa nouvelle devise  
et son cour il clique sur le bouton "ajouter" pour ajouter la devise au
vector et à la combo (la zone de saisie disparaît pour laisser place à
la combo). Je souhaites donc qu'une fois la devise ajoutée qu'elle soit
sélectionnée dans la combo. Pour connaître son index je recherche la
devise dans le vector et note son index. Pour sélectionner un item dans
la combo je fais de cette façon : jcbDevises.setSelectedIndex(Indice);
(où Indice représente l'index où se situe la devise dans le vector)
 
Le problème que je rencontre est le suivant : la combo contien 5
éléments, 4 initialisés lors de l'ouverture de l'application et le 5ème
correspond à la devise qui vient d'être créer. Si j'effectue une
selection en dur (c'est à dire que je ne tienne pas compte de ma
recherche dans le vector de devise pour connaître son index comme cecei :
 
jcbDevises.setSelectedIndex(0);
 
Si la valeur de l'index est compris entre 0 et 3 la combo me selectionne
le bon item. Cependant si j'affecte l'index de l'élément ajouté c'est
à dire 4 dans mon cas, la combo disparaît, comme si j'avais effectué
juste après un combo.setVisible(false); , or en aucun cas j'effectue
cette instruction. J'ai utilisé le mode débug d'eclipse et
j'ai inspecté les valeurs de la combo (les données concernant les
devises sont bonnes, celle qui vient d'être ajoutée à bien été pris en
compte dans la combo, et la valeur de "visible" de la combo est bien à
true)
 
Je vous remercie d'avance.

Reply

Marsh Posté le 27-05-2006 à 09:56:47   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed