블로그 이미지
일상을 살아가면서 겪게되는 얘기들, IT에 관한 얕은 지식을 일상의 얘기와 함께 풀어갑니다.
하트바다

공지사항

최근에 올라온 글

최근에 달린 댓글

글 보관함

calendar

1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

CListCtrl 에서 깜빡임 없애기

2011. 8. 10. 22:43 | Posted by 하트바다
MFC의 CListCtrl 을 가끔 사용하다 보면 전체 데이터를 업데이트 할 때 깜빡임 현상이 꼭 발생하곤 한다.
이를 위해 많은 방법을 동원한다.
일반적인 SetItem 을 하기 전에 Item 을 확인하고 같으면 그냥 넘기는 등의 나름 꼼수를 동원했었다.
이번에도 또 그런현상이 발생하길래...
한번 뒤져 보았다.

이런....

구글링보다 더 멋진 MSDN에서 나왔다.
comctl32.dll 의 Version 6.00 이상 부터 지원하는 기능이다.

LVS_EX_DOUBLEBUFFER
Version 6.00. Paints via double-buffering, which reduces flicker. This extended style also enables alpha-blended marquee selection on systems where it is supported.


라는 옵션이 생겼다.

그래서 간편하게...

m_lvAttInfo.SetExtendedStyle(LVS_EX_GRIDLINES); 



m_lvAttInfo.SetExtendedStyle(LVS_EX_DOUBLEBUFFER | LVS_EX_GRIDLINES);  

만 해주면 결론적으로는 깜빡임이 거의 없어진다.
역시 결론은 MSDN 검색의 일상화!!!!