Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Преобразование типов


Автор: Бегемот 16.3.2005, 21:23
Перекидываю программу из CBuilder'a в Delphi и вот сталкнулся с такой штукой:вот на этой строчке...
Код

 Button1.Left:=(Form1.Width-Button1.Width)/2;

...получаю ошибку
Incompatible types:'Integer' and 'Extended'
В сях при присвоении переменной типа int дробного числа, дробная часть откидывается "автоматом".Как быть тут? Как преобразовать тип?..Или надо проводить дополнительную операцию получения целой части от дроби? smile
Спасибо.

Автор: Albinos_x 16.3.2005, 21:48
при делении может получиться дробное число, поэтому делфя расценивает результат как тип Extended.
Решение проблемы
Код

Button1.Left:=trunc((Form1.Width-Button1.Width)/2);

Автор: Alex 16.3.2005, 21:50
Код

Button1.Left:=(Form1.Width-Button1.Width) div 2;


Автор: Бегемот 16.3.2005, 22:10
Спасибо, ребята!!! smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)