Probleme avec .setContentPane()
Bonjour à tous,
Je vous soumet un problème très bizarre et que je n'arrive pas à m'expliquer.
J'ai une interface graphique avec une liste déroulante.
Lorsque l'on choisit un élément dans cette liste l'affichage de la page est modifié :
voici l'action :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
String typeTempsPartiel=types.getSelectedItem().toString();
String quotiteTempsPartiel=quotites.getSelectedItem().toString();
String nbmoistp=mois.getText();
Pattern mapattern=Pattern.compile("[0-9]{1,2}");
if (!( mapattern.matcher(nbmoistp).matches()))
{
nbmoistp="0";
}
int nbMoisTempsPartiel=Integer.parseInt(nbmoistp);
monCourant.afficheTP(fenetre,typeTempsPartiel,quotiteTempsPartiel,nbMoisTempsPartiel,"");
}
}); |
Si j'applique cette actionPerformed à un bouton, celà fonctionne très bien.
Par contre si je l'affecte à ma liste déroulante de manière à ce que le changement d'affichage se fasse dès la sélection je me retrouve avec un message d'erreur :
"Exception in thread "AWT-EventQueue-0" java.lang.IndexOutOfBoundsException: Index: 2, Size: 2"
Le bout de code qui coince est celui ci :
Code:
1 2 3
|
JPanel reset=new JPanel();
fenetre.setContentPane(reset); |
Est-ce que quelqu'un aurait une idée du pourquoi cette ligne de code passe au premier affichage, passe si on l'utilise via un bouton, mais pas si on l'intègre à la liste déroulante.
Merci d'avance.
Louve.