버쳘 트리뷰는 현재 버전이 3.8.3이고 업데이트된지 한참 됐습니다.
그럼에도 불구하고 BCB에서 쓰려면 헤더를 약간 수정해야 하죠.
게다가 직접 상속받아서 새로운 컴포넌트를 개발하고자 할때는 한군데를 더 수정해 줘야 하더군요.
1. #include <oleidl.h> 추가
앞쪽 인클루드 부분에 한 줄 추가해 줍니다. 대게 별 문제 없이 컴파일 되지만 가끔 다른 컴포넌트나 유닛에서 oleidl.h를 인클루드 하지 않은 경우 컴파일 에러가 뜰 수 있습니다. 그래서 요놈을 한 줄 삽입하면 깨끗하게 컴파일 됩니다.
2. HICON 타입 수정
이건.. 버쳘트리뷰를 그냥 폼에 삽입해서 쓸땐 아무 문제가 안되는 부분입니다. 버쳘트리뷰를 직접 상속받아서 새로운 컴포넌트를 만들 때 문제가 될겁니다. 링킹에러가 나죠.
protected쪽의 함수 중
virtual void __fastcall DoGetHeaderCursor(HICON &Cursor);
이런 부분이 있는데
virtual void __fastcall DoGetHeaderCursor(unsigned int &Cursor);
이렇게 고치시면 아무 문제 없이 링킹까지 깨끗하게 이루어 질겁니다.
더 좋은 해결책을 알고 계시는 분은 제게도 알려주시면 고맙겠습니다.
|