Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.02.10;
Скачать: [xml.tar.bz2];

Вниз

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

 
Оля   (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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.01 c
1-28806
OxOTHuK
2003-02-02 11:00
2003.02.10
Загрузка


1-28859
Dr.Karter
2003-01-21 10:29
2003.02.10
DrawGrid - одни мучения и часы проведенные в пустую


1-28839
skirdov
2003-02-02 19:24
2003.02.10
Работа с датами


1-28748
Sentinel
2003-01-31 23:48
2003.02.10
ShlObj.SHGetPathFromIDList - обратное преобразование.


1-28829
Son!K
2003-02-02 18:49
2003.02.10
Hex в Делфи





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский