Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.01.2012, 09:58   #1
-Wanderer-
Новичок
Джуниор
 
Регистрация: 17.01.2012
Сообщений: 4
По умолчанию проблема с Edit

Привет народ, нужна помощь. Пишу программу таймер. В программе есть два поля в которые соответсвенно вводятся минуты и секунды. Если в поле ничего не введено, то программа считает что введен ноль.

Проблема такова - если ничего не ввести, то возникает ошибка EConvertError "" is not a valid value

Та часть кода, в которой может быть ошибка

Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
  case status of
   0:                                  
    begin
      Edit1.Visible := false;
      Edit2.Visible := false;
      Label2.Visible := false;       
      Label3.Visible := false;

      if Edit1.Text = ''           
        then min := 0
      else
        min := StrToInt(Edit1.Text);
      if Edit2.Text = ''
        then sec := 0
      else
        sec := StrToInt(Edit2.Text);

      if (min <= 60) and (min >= 0)
        and (sec <= 60) and (sec >= 0) then begin
          min := StrToInt(Edit1.Text);
          sec := StrToInt(Edit2.Text);
      end
      else
        begin
          MessageDlg('Ââîä íåâåðíûõ äàííûõ',mtError,[mbOk],0);
          FormCreate(self);
          Exit;
        end;

      Button1.Caption := 'Ñòîï';

      Timer1.Enabled := true;
      status := 1;
    end;
    1:                                  
      begin
        Timer1.Enabled := false;
        Button1.Caption := 'Çàíîâî';
        status := 2;
      end;
    2: FormCreate(self);                
  end;
end;
-Wanderer- вне форума Ответить с цитированием
Старый 17.01.2012, 10:09   #2
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

а у вас нет проверки на пустой Edit!
есть на пробел
Цитата:
Код:
 if Edit1.Text = ''
а ну постой Edit нет!
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 17.01.2012, 10:12   #3
-Wanderer-
Новичок
Джуниор
 
Регистрация: 17.01.2012
Сообщений: 4
По умолчанию

Я пишу именно на пустой ( if Edit1.Text = '' - между кавычками ничего нет)
-Wanderer- вне форума Ответить с цитированием
Старый 17.01.2012, 10:22   #4
myg
 
Регистрация: 22.12.2011
Сообщений: 7
По умолчанию

Цитата:
Сообщение от -Wanderer- Посмотреть сообщение
Я пишу именно на пустой ( if Edit1.Text = '' - между кавычками ничего нет)
Тупой вопрос, а Text ранее был инициализирован на пустое значение, а то может в нем что-то есть, а он у вас невидим.

Да, кстати в этом месте


if (min <= 60) and (min >= 0)
and (sec <= 60) and (sec >= 0) then begin
min := StrToInt(Edit1.Text);
sec := StrToInt(Edit2.Text);
end

вы преобразуете в целое возможно пустой Edit

Последний раз редактировалось myg; 17.01.2012 в 10:38.
myg вне форума Ответить с цитированием
Старый 17.01.2012, 10:31   #5
-Wanderer-
Новичок
Джуниор
 
Регистрация: 17.01.2012
Сообщений: 4
По умолчанию

он изначально пустой...
-Wanderer- вне форума Ответить с цитированием
Старый 17.01.2012, 10:43   #6
myg
 
Регистрация: 22.12.2011
Сообщений: 7
По умолчанию

Цитата:
Сообщение от -Wanderer- Посмотреть сообщение
он изначально пустой...
преобразование пустого текста ( '' ) дает такую ошибку.
Надо проверять на непустоту
myg вне форума Ответить с цитированием
Старый 17.01.2012, 10:55   #7
-Wanderer-
Новичок
Джуниор
 
Регистрация: 17.01.2012
Сообщений: 4
По умолчанию

Все, понял, спасибо огромное!
-Wanderer- вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
edit spartan92 Общие вопросы Delphi 10 15.05.2011 15:15
Копирование строки из Edit в другой Edit. Ibanez Wizard Win Api 3 29.03.2011 02:46
Delphi, проблема с EDIT utrnjhyfgjktjy Помощь студентам 0 03.04.2010 14:06
Проблема с Edit Stein21 Общие вопросы Delphi 17 26.01.2009 00:23