Логическое значение не изменилось, несмотря на ввод из текстового поля - PullRequest
0 голосов
/ 26 января 2020

Когда я вписываю число в пределах диапазона в текстовое поле, логическое значение должно меняться в зависимости от введенного числа. Но оно все равно остается ложным для числа от 10 до 30 и выше 30. Чего мне не хватает в моем коде ?

      Submitbtn.addActionListener(new ActionListener()
       {
          public void actionPerformed(ActionEvent e)
          { 
            int value = Integer.valueOf(candynumf.getText());
               if(value > 0 && value <= 10)
               {
                  candypackage1 = true;
                  candypackage2 = false;
                  candypackage3 = false;

               }
               else if(value > 10 && value <= 30)
               {
                  candypackage1 = false;
                  candypackage2 = true;
                  candypackage3 = false;
               }

               else if(value > 30)
               {
                  candypackage1 = false;
                  candypackage2=false;
                  candypackage3 = true;
               }   

               String candypack = String.valueOf(candypackage1);
               candypackage1bl.setText(candypack);
               });

1 Ответ

0 голосов
/ 26 января 2020

Ваш код устанавливает для локальной переменной candypackage1 значение true, а не поле. Затем вы устанавливаете текст в поле candypackage1. Либо переместите код для установки текста внутри оператора if, либо переместите локальную декларацию вне оператора if, либо задайте поле вместо создания локальной переменной.

...