가상 및 OwnerDraw 모드에서 ListView 컨트롤을 사용하여 여러 항목을 표시하고 있습니다. 끌기 이벤트 또는 RetrieveVirtualItem 이벤트를 트리거하지 않고 특정 항목이 (컨트롤의 클라이언트 영역 내에서) 볼 수 있는지 테스트하는 방법이 있습니까?항목이 가상 ListView에 표시되는지 테스트
문제는 정기적으로 목록보기에 항목을 추가하는 배경 스레드가 있다는 것입니다. 그러나 몇 가지 이유로, 추가 항목을 추가 할 때마다 (VirtualListSize 증가) 마지막 항목에 대한 RetrieveVirtualItem이 트리거됩니다. 가시적 인 범위에 가깝지는 않지만 추가됩니다. 그리고 실제로 볼 수있는 항목 만 그리기를 원합니다.
아이디어가 있으십니까?
DrawItem 이벤트는 표시되는 항목에만 발생한다고 생각했습니다. –
아니요, VirtualListSize (목록의 마지막 항목)를 변경할 때마다 확실히 발생합니다. –