[Java]

Bonjour, j'ai un problème sous visual j# les Label de mon Panel doivent changer en fonction d'une combo box.
voici mon code:
private void comboBox1_SelectedIndexChanged (Object sender, System.EventArgs e)
{
boolean ok=(comboBox1.get_Text()=="Canalisation");
if(ok)
{
label9.set_Text("Diamètre");
label10.set_Text("Emprise");
label11.Hide();
}
}

Le problème est que la variable ok reste toujours sur false alors que lorsque je fait un watch sur l'expression (comboBox1.get_ Text()=="Canalisation") elle passe bien a true et a false en tant voulu.

Pire quand je force la valeur de ok a true il repasse a false des l'affectation même si le (comboBox1.get_Text()=="Canalisation") est a true.

Merci d'avance pour votre aide sa doit être un truc trés con mais je ne vois vraiment pas.

7 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    Sépare ton test de l'affectation et ca devrait alez mieux.

    ++
    1. Merci pour ta réponse mais sa ne change rien du tout, toujours le meme problème.
      1. Ou alors j'ai mal compris se que je devais faire, séparer le test de l'affectation ?
        Je suis obliger de stocker le résultat du test dés que je l'effectue.

        J'ai aussi essayer de mettre le comboBox1.get_Text()=="Canalisation") dans le if même résultat le prog ne va jamais dans le if alors que lorsque je fait un watch sur l'intérieur du if il est a true
      2. Contributeur
        Bizarre, ca c'est bien du java... des erreur à la con qui font chercher pendant trois plombes...
        Il doit y avoir un truc au niveau du getText peut etre..
    2. Modérateur
      salut

      essaye ça

      comboBox1.get_Text().equalsIgnoreCase("Canalisation"); 
      1. Nan sa marche toujours pas, j’y comprends rien l’intérieur du if est a true et il ne va pas dans le if
        1. Modérateur
          if (ok == true)


          je ne sais pas si ça peut marcher, j'ai pas de compilateur
          1. j'ai rentrée ca:

            if(Equals("Canalisation",comboBox1.get_Text()))

            { groupBox4.set_Height(128);
            .....

            sa marche je ne vois pas pourquoi sa ne marché pas avant mais bon le principale c'est que ca marche.

            Merci de votre aide.
            1. Contributeur
              Pensez à cocher comme quoi le pb est résolu, comme ca c'est de suite plus lisible dans la liste des questions

              ++