Форум: "Основная";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];
ВнизCanvas не обновляется... Найти похожие ветки
← →
3APA3A © (2004-11-04 18:03) [0]for i:= 0 to Length(MyArray) - 1 do
Canvas.Pixels[MyArray[i].X, MyArray[i].Y] := clRed;
координаты в MyArray постоянно изменяются. Также добавляются новые элементы. И цикл этот крутится все время работы программы.
Но выводится только первая точка. Остальные - нет.
Причем, если после цикла добавить ShowMessage("") и сидеть, и постоянно давить на Enter - все прекрасно рисуется... В чем проблема?
← →
Prohodil Mimo © (2004-11-04 18:08) [1]как один из вариантов:
for i:= 0 to Length(MyArray) - 1 do
begin
Canvas.Pixels[MyArray[i].X, MyArray[i].Y] := clRed;
paint;
end;
← →
Prohodil Mimo © (2004-11-04 18:09) [2]Prohodil Mimo © (04.11.04 18:08) [1]
хотя лажа получица :о)
надо по другому
← →
3APA3A © (2004-11-04 18:14) [3]Это ничего не меняет. Пробовал. Все равно только одна рисуется.
← →
Anton_K © (2004-11-04 18:22) [4]А может у вас в MyArray одни и те же координаты?
← →
Rem © (2004-11-04 18:23) [5]Скорее всего, проблема в MyArray[].
Вы уверены, что координаты из MyArray попадают в область отображения? Или что элементы массива отличаются друг от друга? Или что размер массива задан правильно?
← →
icWasya © (2004-11-04 18:29) [6]А если после цикла добавить Application.ProcessMessages; ???
← →
Rem © (2004-11-04 18:34) [7]icWasya © (04.11.04 18:29) [6]
С каких это пор Pixels работает через PostMessage?
← →
3APA3A © (2004-11-04 22:42) [8]Нет, проблема не в массиве. Т.к. сказал же - если после цикла дописать ShowMessage() и постоянно давить enter - все рисуется...
Какие еще варианты?
← →
3APA3A © (2004-11-04 23:10) [9]Ой блин...Разобрался... Дело на самом деле не в Canvas"е было...
Извините...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.043 c