|
1. 지금 bitmap을 그리는 Control이 Graphics컨트롤이면(TImage같은것)
그 Parent 컨트롤의 DoubleBufferd = true로 하세요
2. 배경과 Bitmap을 분리하는 방법을 써보심은 어떨런지요?
2.1 Graphic32 를 이용하면 Layer개념이 있습니다.
배경위에 layer를 한장 올려놓고 layer를 움직이면 ... 껌벅거림이 없이...
2.2 TImage를 이용해서도 g32에 layer처럼 동작하도록 할수 있습니다.
배경을 TImage에 올려두시고 -- repaint 하지않음
움직이는 bitmap을 또다른 TImage위에 올려서 ..
Timer이벤트에 윗쪽에 image만 좌표를 수정해주시면 됩니다.
parent의 doublebufferd=true ; 해두시구요
그럼..
newhuni 님이 쓰신 글 :
: 안녕하세요..
: 비트맵 이동에 대해서 고수님들께 조언부탁드립니다.
: 제가 하려는 것은 비트맵을 한쪽 방향으로 이동시키는 것입니다.
:
: 지금 하는 방식은
: 1. 타이머를 이용하여 해당 비트맵의 Top, Left좌표값을 변경시킨다.
: 2. 배경 이미지를 그린다.
: 3. 해당 비트맵을 그린다.
: 이렇게 반복하고 있습니다.
:
: 그런데 비트맵이 이동되기는 하지만 계속 깜박이네요.
: 아무래도 배경 이미지를 그리는 부분때문에 그런것 같습니다.
:
: 일반 도형(원, 사각형... 등)의 경우 PenMode를 XOR처리하여 해당 도형만 다시 그리려주면
: 깜박이는 부분은 발생하지 않을 것 같습니다.
: 그런데 비트맵은 그렇게도 되지 않으니.. 어찌 해야 할지 모르겠네요..
:
: 고수님들의 조언부탁드립니다.
|