Консультация № 181287
13.12.2010, 08:52
55.00 руб.
0 6 1
Здравствуйте, уважаемые эксперты! Прошу Вас ответить на следующий вопрос: Разрабатываю приложение с расчетом цены. Результат расчета выводится в TEdit с последуещей выгрузкой в Excel. Как мне получить в TEdit результат расчета стоимости в формате к примеру 245руб 55коп., и соответсвенно такое же отображение в Excel. Может быть использовать компонент MaskEdit? Подскажите правильный подход.

Обсуждение

Неизвестный
13.12.2010, 09:25
общий
Адресаты:
Результат выводится в Tedit программно?

Если да, то выражение вида
Tedit1.Text = StrToInt(price_int)+' руб.'+StrToInt(price_float);

А число рублей и копеек из дробного числа price можно получить с помощью

price_int = trunc(price);
price_float = trunc(100*(price-price_int))
давно
Посетитель
352040
133
13.12.2010, 09:38
общий
Благодарю за ответ. Результат выводится програмно. После введения всех данных нажимаем "расчет" и получаем результат в Tedit1.
Об авторе:
Пользуюсь Delphi Enterprise Version7.
Неизвестный
13.12.2010, 09:41
общий
это ответ
Здравствуйте, Владимир!

Раз то, что и нужно, то переношу в ответы.

Tedit1.Text = StrToInt(price_int)+' руб.'+StrToInt(price_float);

А число рублей и копеек из дробного числа price можно получить с помощью

price_int = trunc(price);
price_float = trunc(100*(price-price_int));
давно
Посетитель
352040
133
13.12.2010, 10:11
общий
Не пойиу как правильно сделать. Подскажите на примере (прикрепленный файл архива). Заранее благодарю.
Прикрепленные файлы:
abaea08a7dc3cfe268d78b5069a445cd.rar
Об авторе:
Пользуюсь Delphi Enterprise Version7.
Неизвестный
13.12.2010, 10:24
общий
Адресаты:
Процедуру кнопки изменить следующим образом:


procedure TForm1.Button1Click(Sender: TObject);
var
e1,e2:Integer;
price_int, price_float: Integer;
s, rez: real;
begin
e1 := StrToInt(Edit1.Text);
e2 := StrToInt(Edit2.Text);
s := 34.40;///Стоимость
rez := (e1-e2)*s;
price_int = trunc(rez);
price_float = trunc(100*(rez-price_int));
Tedit3.Text = IntToStr(price_int)+' руб.'+IntToStr(price_float);
end;

Извиняюсь, я раньше немного не в том порядке записал:
StrToInt вместо IntToStr
давно
Посетитель
352040
133
13.12.2010, 10:39
общий
Все работает. Еще раз большое спасибо.


{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
e1,e2:Integer;
price_int, price_float: Integer;
s, rez: real;
begin
e1 := StrToInt(Edit1.Text);
e2 := StrToInt(Edit2.Text);
s := 34.40;///Стоимость
rez := (e1-e2)*s;
price_int := trunc(rez);
price_float := trunc(100*(rez-price_int));
Edit3.Text := IntToStr(price_int)+' руб.'+IntToStr(price_float);

end;

end.
Об авторе:
Пользуюсь Delphi Enterprise Version7.
Форма ответа