Преобразования тип данных

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
NoNaMeD
незнакомец
Сообщения: 2
Зарегистрирован: 29.10.2012 12:43:00
Откуда: Irkutsk

Преобразования тип данных

Сообщение NoNaMeD »

Недавно перешел c Windows на Linux, и как альтернативу Delphi выбрал Lazarus

Столкнулся с такой проблемой:
Допустим на форму добавил два элемента TEdit и кнопочку Button:
код которой такой:

Код: Выделить всё

procedure TForm1.bpClick(Sender: TObject);
var a: Currency;
begin
   a:=FloatToStr(Edit.Text);
end;


Хочу присвоить переменной 'a' значение Edit.Text, делаю это с помощью функции FloatToStr как в Delphi, но оно выдает такую ошибку:

Код: Выделить всё

indexform.pas(133,32) Error: Incompatible type for arg no. 1: Got "TTranslateString", expected "Int64"


Подскажите, может в Lazarus это делается как то по другому?
Аватара пользователя
AnacRon
новенький
Сообщения: 47
Зарегистрирован: 16.12.2009 10:09:09
Откуда: Караганда

Сообщение AnacRon »

NoNaMeD писал(а): a:=FloatToStr(Edit.Text);

Может

Код: Выделить всё

   a:=StrToFloat(Edit.Text);
или

Код: Выделить всё

   a:=StrToCurr(Edit.Text);

У вас переменная a:Currency, а результат FloatToStr(): string
NoNaMeD
незнакомец
Сообщения: 2
Зарегистрирован: 29.10.2012 12:43:00
Откуда: Irkutsk

Сообщение NoNaMeD »

AnacRon писал(а): a:=StrToCurr(Edit.Text);


Большое спасибо, работает:)
Ответить