파일 다운로더가 있으므로 파일 이름, 속도, 파일 크기, 다운로드 한 크기, 왼쪽/경과 시간, 완료 비율 등의 목록보기가 있습니다. (진행 표시 줄) -> 아이콘, 텍스트, 배경, 진행률 막대 등을 그려야합니다. 모든 데이터를 저장하여 목록보기로 그리는 효율적인 방법은 무엇입니까?델파이 : 목록보기에서 그리기위한 데이터 저장소
예를 들어 텍스트 "오류"를 그리고 나서 배경이 빨간색이어야합니다. 오류를 확인하고이 같은 문자로 그릴 수 있습니다. if SameText(Item.SubItems[5], 'error') then
,하지만이 방법으로 모든 항목을 그리는 것이 빠르면 모든 데이터를 목록보기에 저장하는 것이 쉬운가요?
그래서 (TList를 기반으로 한) 자체 클래스를 만들고 모든 항목에 대한 클래스 개체를 만든 다음 해당 개체를 데이터 속성에 할당해야합니까? 목록보기 만 사용하여 목표를 처리 할 수 있습니다. 그러나 그것이 효율적인 지 모르겠다. ... – maxfax
@maxfax TList는 데이터 객체를위한 컨테이너이다 (어쨌든 가지고있다). 정말로 필요한 것은 아이템의 상태를 설명하는 데이터 객체입니다. 아니요, 목록보기 만 사용하여 목표를 처리 할 수 없습니다. 지금 당장 목록보기로 트릭을하고 머물 수는 있지만, 이것은 깨진 디자인이며 앞으로는 직접 발견 할 것입니다. –
@daemon_x 가상이 아닌 소유자 그리기 모드에서도 코드는 데이터를 가져올 위치를 알아야하며이 경우 데이터 객체가 소스입니다. –