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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.10.2012, 18:22   #1
[Jank]
Пользователь
 
Регистрация: 10.08.2012
Сообщений: 43
По умолчанию Проверка пустых значений в Edit.

Добрый день. Пришла надобность сделать проверку на пустоту значения компонента edit(то есть если там числа из определенного диапазона или вообще пусто) то вылазит окно, в котором в котором просят ввести число, ты его закрываешь и пишешь значения.

Код:
procedure TForm1.sButton1Click(Sender: TObject);
var n,f,i:Integer;
begin
 N:=StrToInt(sEdit1.Text);
 if (n<0) or (n>=13) or  (sEdit1.Text='') then
 begin
  if lang='rus' then ShowMessage('Ïîæàëóéñòà óêàæèòå ïîëîæèòåëüíîå çíà÷åíèå íå áîëüøå 13');
  if lang='eng' then ShowMessage('Please enter positive value from 1 to 13');
 end
 else

 f:=1;
 For i:=2 to n do f:=f*i;
 sEdit2.text:=IntToStr(f);
end;
Код:
procedure TForm1.sButton2Click(Sender: TObject);
var a,n:longint; st:real;
begin
  if (Chislo.Text='') or (Stepen.Text='') then
 begin
  if lang='rus' then ShowMessage('Ïîæàëóéñòà óêàæèòå ÷èñëî.');
  if lang='eng' then ShowMessage('Please enter the number.');
 end
 else

 a:=StrToInt(Chislo.Text);
 n:=StrToInt(Stepen.Text);
 st:=Power(a,n);
 sEdit3.Text:=FloatToStr(st);
end;
Код:
procedure TForm1.sButton3Click(Sender: TObject);
var x1,x2:real;
    b,a,c,D:integer;
begin
 if (sEdit6.text='') or (sEdit7.text='') or (sEdit8.text='') then
  begin
   if lang='rus' then  MessageBox(0, PChar('Ïîæàëóéñòà óêàæèòå ïîëîæèòåëüíîå çíà÷åíèå, êîòîðîå áîëüøå 0.'), PChar('Îøèáêà'), MB_OK);
   if lang='eng' then  MessageBox(0, PChar('Please enter positive value, that above 0'),PChar('Error'), MB_OK);
  end
  else
 a:=strtoint(sEdit6.text);
 b:=strtoint(sEdit7.text);
 c:=strtoint(sEdit8.text);

 If (a>0) then
 d:= b*b-4*a*c;
 if d>0 then
begin
 x1:=(-b+sqrt(d))/(2*a);
 x2:=(-b-sqrt(d))/(2*a);
 sEdit5.text:=floattostr(x1);
 sEdit4.text:=floattostr(x2);
end;

 if d=0 then
begin
 x1:=-b/(2*a);
 x2:=x1;
 sEdit4.text:=floattostr(x2);
 sEdit5.text:=floattostr(x1);

end;

 if d<0 then
 ShowMessage('Êîðíåé íåò.');
end;
Проблема в том, что при не заполнеии полей вылазит мое окно, а потом дэлфийское('' is no valid integer value). Задача избавиться от появления дэлфийского окна.

Последний раз редактировалось [Jank]; 22.10.2012 в 18:31.
[Jank] вне форума Ответить с цитированием
Старый 22.10.2012, 18:56   #2
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
begin
   if lang='rus' then  MessageBox(0, PChar('Ïîæàëóéñòà óêàæèòå ïîëîæèòåëüíîå çíà÷åíèå, êîòîðîå áîëüøå 0.'), PChar('Îøèáêà'), MB_OK);
   if lang='eng' then  MessageBox(0, PChar('Please enter positive value, that above 0'),PChar('Error'), MB_OK);
exit;
  end
Код:
if (sEdit6.text='') or (sEdit7.text='') or (sEdit8.text='') then
  begin
   if lang='rus' then  MessageBox(0, PChar('Ïîæàëóéñòà óêàæèòå ïîëîæèòåëüíîå çíà÷åíèå, êîòîðîå áîëüøå 0.'), PChar('Îøèáêà'), MB_OK);
   if lang='eng' then  MessageBox(0, PChar('Please enter positive value, that above 0'),PChar('Error'), MB_OK);
exit;
  end
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Stilet; 22.10.2012 в 21:45.
Mad_Cat вне форума Ответить с цитированием
Старый 22.10.2012, 19:18   #3
[Jank]
Пользователь
 
Регистрация: 10.08.2012
Сообщений: 43
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
Код:
if (sEdit6.text='') or (sEdit7.text='') or (sEdit8.text='') then
  begin
   if lang='rus' then  MessageBox(0, PChar('Ïîæàëóéñòà óêàæèòå ïîëîæèòåëüíîå çíà÷åíèå, êîòîðîå áîëüøå 0.'), PChar('Îøèáêà'), MB_OK);
   if lang='eng' then  MessageBox(0, PChar('Please enter positive value, that above 0'),PChar('Error'), MB_OK);
exit;
  end
Чувак, нереальное спасибо! Помог!) дело было в exit; а я голову ломал), слушай, а что не так с 1 кодом? он постоянно выдает диалог, даже если там есть значение...
[Jank] вне форума Ответить с цитированием
Старый 22.10.2012, 19:23   #4
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Цитата:
а что не так с 1 кодом? он постоянно выдает диалог, даже если там есть значение...
какой код 1?
Какой диалог?
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 22.10.2012, 19:30   #5
[Jank]
Пользователь
 
Регистрация: 10.08.2012
Сообщений: 43
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
какой код 1?
Какой диалог?
Все, я разобрался) выдавал нужный диалог(то есть мой, о том что пустое значение). Всегда) Спасибо за помощь.

Загляни сюда, посмотри на готовый Проект, оцени. Критика приветствуется.
[Jank] вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запрет на ввод пустых значений Ericnex БД в Delphi 6 31.08.2012 10:01
Проблемы с выводом пустых значений zimmion PHP 2 28.07.2012 16:46
excel проверка и удаление пустых ячеек reihtmonbern Общие вопросы Delphi 0 27.05.2012 15:17
Удаление пустых и ошибочных значений ymnuhj Microsoft Office Excel 1 03.04.2012 14:33
Поиск значений и удаление пустых строк OgE®_M@G Microsoft Office Excel 12 16.12.2009 20:37