Вниз
Скачать: CL | DM;

<<<<<<Проблема с несоответствием типов>>>>>   Найти похожие ветки 

 
d_coder ©   (2002-10-08 21:21) [0]

Ситуация такова: есть Image. Пользуясь свойством Canvas я хочу нарисовать на ней с помощью линий (Image1.Canvas.LinesTo(x,y) определенную карту, вершины которой (x,y) должны читаться из ячеек StringGrid и представлены в виде, например "-3.0", "0.0", "2.99" и т.п.
Проблема, естественно, в том, что имеет место несоответствие типов: т.е. компилятор кричит, что >>> "-3.0" не является Integer <<<. Интересно, как еще можно провернуть такую операцию, если из строки можно, вроде бы, конвертировать в StrToInt, да и Canvas.LineTo жрет только Integer переменные.
Уважаемые мастера и люди, сталкивавшиеся раньше с такой проблемой, подскажите решение!!!


 
Rouse_ ©   (2002-10-09 02:36) [1]

Ну если ты просто будешь рисовать с такими координатами
> "-3.0", "0.0", "2.99" и т.п.
то даже если бы у тебя и не было несоответствия типов то получился бы один большой (примерно 3 на 3) пиксель ;) Попробуй не StrToInt а StrToFloat, это раз.
Потом каждую координату умножь хотя бы на 50, округли ее до наибольшего (наименьшего) целого и только тогда делай LinesTo

Желаю успехов


 
Dr.UFO_51   (2002-10-18 17:26) [2]

Если потребуется HELP мыль сюды : CivUFO@mail.ru
Почему никто не пользуется стандартами???!!!
Есть 2 замечательных функции Trunc и Round
Вот пример :

////////////////////////

var
a:integer;
begin

a:=trunc(3.8); // отрезает целую часть (здесь a=3)
// или
a:=round(4.7); // округляет (здесь a=5 )

/////////////////////////

Удачи !!!



Страницы: 1 вся ветка

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



Память: 0.45 MB
Время: 0.014 c
14-93243
Фикус
2002-11-11 09:33
2002.11.28
помогите реанимировать


1-93125
ed_209
2002-11-18 09:08
2002.11.28
доступ к ScrollBar в ListView


3-92849
Zeeke
2002-11-09 01:37
2002.11.28
Помогите!


3-92864
stone
2002-11-10 10:10
2002.11.28
CoInitialize Library


1-93129
Gayrus
2002-11-17 13:41
2002.11.28
Как Borland y это удалось?




   Наверх