walkn
Messages postés96Date d'inscriptionsamedi 2 mai 2009StatutMembreDernière intervention23 avril 2011
-
1 juin 2010 à 09:34
walkn
Messages postés96Date d'inscriptionsamedi 2 mai 2009StatutMembreDernière intervention23 avril 2011
-
1 juin 2010 à 10:55
Bonjour j'aimerai avoir une petite precision sur l'utilisation du switch case sur une ComboBox.
Je voudrais que dans mes choix 1 à 9 le meme calcul se fasse et que le resultat s'affiche dans un premier LabelQuantiteL. Pour le cas 10 je voudrais que ca soit deux autres calculs qui se fassent et que le resultat aille dans deux Labels differents (QuantiteAV et QuantiteAR) du premier.
J'ai écrit:
void carburant(){
int Res = 0;
int Res1 = 0;
int Res2 = 0;
int carbu = Integer.parseInt(jTextFieldpourcentage.getText());
int carbu1 = Integer.parseInt(jTextFieldCarbuAV.getText());
int carbu2 = Integer.parseInt(jTextFieldCarbuAR.getText());
double d = 5.4;
double d1 = 4.06;
double d10 = 7.3;
switch (jComboBox.getSelectedIndex()){
case 1: Res = (int) (carbu * d); break;
case 2: Res = (int) (carbu * d); break;
case 3: Res = (int) (carbu * d); break;
case 4: Res = (int) (carbu * d); break;
case 5: Res = (int) (carbu * d); break;
case 6: Res = (int) (carbu * d); break;
case 7: Res = (int) (carbu * d); break;
case 8: Res = (int) (carbu * d); break;
case 9: Res = (int) (carbu * d1); break;
case 10: Res1 = (int) (carbu1 * d10);
Res2 = (int) (carbu2 * d10); break;
jLabelQuantiteAV.setText("" + Res1);
jLabelQuantiteAR.setText("" + Res2);
}
jLabelQuantiteL.setText("" + Res);
}
Il doit ya voir un probleme de syntaxe car mes deux derniers labels sont souligné en rouge
Tu sembles avoir oublié que getSelectedIndex retourne une valeur 0 à 9 (si bien entendu tu as 10 lignes dans ta combo.
Donc tu peux faire ceci:
switch (jComboBox.getSelectedIndex(){
case 9:
//traitement 10ème ligne
.....
.....
break;
default:
// traitement des cases 0 à 8 (de la 1ère à la 9éme ligne)
.......
.......
break;