Odświeżanie TImage

0

Witam

Mam problem z odświeżaniem tzn. tak:
rysuję pojedyncze piksele na TImage takim sposobem:
Image1->Canvas->Pixels[x][y]
Pętla wykonuje się dużo razy (rysuje dużo pikseli) i chcę aby każdy narysowany piksel był od razu widoczny na TImage.
W tym celu odświeżam TImage takim sposobem:
Image1->Refresh()
Niestety program zwalnia 3-krotnie w najlepszym przypadku, im więcej jest pikseli do narysowania to wiadomo - dłużej będą one rysowane.
Nie mam problemu, gdy nie odświeżam w ogóle, ponieważ piksele rysowane są w mgnieniu oka, ale widoczne są dopiero, gdy już się zakończy rysowanie, czyli widoczne jest od razu wszystko, a mi zależy żeby każdy piksel był widoczny zaraz po narysowaniu. Więc zwracam się do Was z pytaniem - jakim sposobem odświeżać szybciej, tzn. żeby szybciej się wykonywał program.

Z góry dzięki za pomoc.

0

Wywołaj

Application->ProcessMessages();

po każdej zmianie. Nie wywołuj Refresh.

0

Testowałem ProcessMessages zanim użyłem Refresha. Właśnie ProcessMessages także opóźnia działanie aplikacji.

0

To przecież normalne, że piksele będą malowane szybciej hurtem niż pojedynczo.

1 użytkowników online, w tym zalogowanych: 0, gości: 1