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

Вниз

Корректная работа программы   Найти похожие ветки 

 
Оля   (2003-01-30 13:55) [0]

Форма имеет ряд ячеек для ввода значений Edit. В ячейках прописаны циферки учавствующие в расчете. Программа не очень хорошо воспринимает пустую ячейку при выполнении расчета. Можно ли сделать так чтобы даже при нажатии Backspace or Delete в ячейке оставался "0"?


 
MBo ©   (2003-01-30 13:57) [1]

А почему не очень хорошо воспринимает? Как обрабатывается строка из Edit? Может, устроит что-то вроде StrToIntDef(Edit.Text,0)?


 
Anatoly Podgoretsky ©   (2003-01-30 14:05) [2]

Приведи коротенький пример расчета


 
Оля   (2003-01-30 14:25) [3]

Допустим ячейка Edit4 (Dtr_1) пуста,
а procedure TForm1.Edit4Change(Sender: TObject) еще весит на Edit12 и Edit13

StrToFloat как я поняла не может считывать из пустой ячейки

procedure TForm1.Edit4Change(Sender: TObject);
begin
Dtr_1:= StrToFloat(Edit4.Text);
Dtr_7:= StrToFloat(Edit12.Text);
Dtr_8:= StrToFloat(Edit13.Text);

Dtr_2:=Dtr_1+Dtr_7-Dtr_8;
Edit17.Text:=FloatToStrF(Dtr_2,ffGeneral,5,1);
end;


 
Max Zyuzin ©   (2003-01-30 14:29) [4]

Попробуй что нить вроде
onChange у Edit-а и проверку
if Edit1.Text = "" then Edit1.Text := "0";


 
Anatoly Podgoretsky ©   (2003-01-30 14:36) [5]

Все зависит как относиться к пустому полу, это же не число, включи преобразование в блок try except end

try
Dtr_1:= StrToFloat(Edit4.Text);
except
Dtr_1:= 0; // или то что ты считаешь должно быть вместо пустого значения.
end

И так же для остальных преобразований.


 
han_malign ©   (2003-01-30 14:36) [6]

if(Not TextToFloat(PChar(Edit.Text),dtr,fvExtended))then dtr:=0;


 
Романов Р.В. ©   (2003-01-30 14:39) [7]

Пишем за 30 секунд такую функцию и усе работает без вопросов.

function StrToFloatDef(const Text: string; Def: double = 0): double;
begin
try
Result := StrToFloat(Text);
except
Result := Def;
end;
end;



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
14-29051
Игорь Шевченко
2003-01-24 12:14
2003.02.10
Любителям экстремального программирования


6-28952
Nord-Ost
2002-12-15 15:18
2003.02.10
Отправка всплывающего сообщения на другой компьютер


1-28818
SaperXL
2003-01-31 03:58
2003.02.10
RichEdit - прокрутка вертикального скролла вниз


7-29121
andreyagsoft
2002-12-06 10:36
2003.02.10
LPT


14-29018
Cobalt
2003-01-21 21:16
2003.02.10
Delphi<->Kylix3