Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.18;
Скачать: CL | DM;

Вниз

Проверить пустая ли строка???   Найти похожие ветки 

 
новичок_из_сыктывкара ©   (2004-03-30 18:39) [0]

Люди помогите надопроверить пустая ли Edit ? если пустая то messagebox? если что то есть то тогда выполнять дальше...вроде все правильно, но что то не получается...может подскажете в чем ошибка, или свой метод...Очень прошу помочь...)

procedure TForm1.SpeedButton1Click(Sender: TObject);
var
d,e,r:real;
kd,ke:real;
code:integer;
begin
e:=strtofloat(edit3.text);
if edit3.Text="" then    application.MessageBox(PChar(введи курс evro"), "Ошибка", MB_OK);
d:=strtofloat(edit4.text);
if edit4.Text="" then    application.MessageBox(PChar(введи курс dollar"), "Ошибка", MB_OK);
r:=strtofloat(edit1.text);
if edit1.Text="" then application.MessageBox(PChar(введи количество рублей"), "Ошибка", MB_OK);
try
ke:=r/e;
kd:=r/d;
except on EZeroDivide do application.MessageBox(PChar("Ââåäè êóðñ èí. âàëþòû-äåëåíèå íà íîëü+"), "Îøèáêà", MB_OK);
end;
edit2.text:=floattostr(ke);
edit5.text:=floattostr(kd);
end;


 
Smithson ©   (2004-03-30 18:42) [1]

Что именно не получается-то? Телепатов нету


 
новичок_из_сыктывкара ©   (2004-03-30 18:43) [2]

в общем не выводит сообщение об ошибке...


 
panov ©   (2004-03-30 18:44) [3]

>новичок_из_сыктывкара ©   (30.03.04 18:43) [2]

в общем не выводит сообщение об ошибке...

А что выводит?


 
имя   (2004-03-30 18:45) [4]

if (Edit3.Text = "") then raise Exception.Create("Введите курс Euro");

P.S. А в чем ошибка-то?


 
Smithson ©   (2004-03-30 18:46) [5]

У тебя в корне неверный подход. Если в строке не число (или строка пустая), то StrToFloat выдаст исключение. Поэтому после нее проверять строку на отсутсвие значения бессмысленно - это нужно делать до. Или не делать вовсе, а заключать каждый StrToFloat в try except и реагировать на ошибку тама.


 
PVOzerski ©   (2004-03-30 18:46) [6]

>PChar(введи
апостроф Пушкин введет? И телепатия не требуется. На будущее: просьба писать внятно, программа не компилируется или работает, но не так


 
новичок_из_сыктывкара ©   (2004-03-30 18:47) [7]

надо что бы выводилась не виндосовское сообщение об ошибке а отлавливалась програмно, а она не отлавливается


 
PVOzerski ©   (2004-03-30 18:51) [8]

>e:=strtofloat(edit3.text);
>if edit3.Text="" then    application.MessageBox(PChar(введи курс >evro"), "Ошибка", MB_OK);
Дык надо же сначала проверять содержимое, а потом strtofloat


 
Smithson ©   (2004-03-30 18:51) [9]

виндосовское сообщение об ошибке
Такового зверя здесь нет в принципе. Все сообщения об ошибках выдает твоя прогамма. Те ошибки, которые ТЫ не обработал, обработает код Borland`а и выдаст стандартное уведомление об ошибке. Не нравиться оно - обрабатывай ошибки сам :))

А windows, по-моему, только про Access Violation ругается сама, поскольку защита ресурсов - привелегия OC.


 
новичок_из_сыктывкара ©   (2004-03-30 18:51) [10]

всем спасибо огромное


 
имя   (2004-03-30 18:56) [11]

1.
try
 E := StrToFloat(Edit3.Text);
except
 on Excp: Exception do // что-то сделать
end;


2.
if (Edit3.Text = "") then
begin
 ShowMessage("Введите курс Euro");
 Exit;
end;
E := StrToFloat(Edit3.Text);


3.
if (Edit3.Text = "") then raise Exception.Create("Введите курс Euro");
E := StrToFloat(Edit3.Text);


4....


 
новичок_из_сыктывкара ©   (2004-03-30 18:57) [12]

:)



Страницы: 1 вся ветка

Текущий архив: 2004.04.18;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.029 c
14-1080030833
Nikolay M.
2004-03-23 11:33
2004.04.18
Чем компьютер похож на мужчину :)


8-1072341789
Вовчик
2003-12-25 11:43
2004.04.18
Помогите отправить звук на выход карты


9-1066175102
Кен
2003-10-15 03:45
2004.04.18
GLScene Как визуально добавить TGLODEDummy ? Почему то немогу


1-1081008074
DADUD
2004-04-03 20:01
2004.04.18
Удаление ресурсов


14-1079969320
}|{yk
2004-03-22 18:28
2004.04.18
Вопрос по ASP