Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
4-29155
mate
2002-12-26 17:14
2003.02.10
Post и SendMessage


6-28967
кондратий
2002-12-18 20:14
2003.02.10
как подключитса к инету програмно...


1-28826
peugeot605
2003-02-02 18:13
2003.02.10
Динамическое создание объектов


14-29039
msoftware
2003-01-23 09:15
2003.02.10
Помогите найти


7-29131
Kuzia
2002-11-26 13:21
2003.02.10
Как написать Сервис




   Наверх