현재까지 Virtual Treeview의 최신버전은 3.4 입니다.
문제는, 이놈을 빌더에 설치하는게 쉽지 않다는 점인데요..
여러가지 문제가 있죠.
첫번째 문제는 XPThemeManager와의 관계에서 발견됩니다.
이전 버전에서는 XP Theme지원 부분이 Virtual Treeview에 내장되어
있었는데 이 부분이 3.4에서는 분리되어 있습니다.
즉, 제대로 설치하려면 XP Theme Manager를 먼저 설치하고, 그 패키지와
연동해서 Virtual Treeview를 설치해야 합니다.
두번째 문제는 DesignTime 패키지인데.. coledit부터 시작해서 도무지
컴파일이 안되죠. 저도 여러가지 방법을 시도했지만 디자인타임 패키지는
상당히 많은 라인을 커맨트처리를 하지 않고는 컴파일 할 수가 없었습니다.
다행히 최근 www.delphi-gems.com에 접속해 보니 누군가 C++ Builder 6 패
키지를 만들어서 올렸더군요. 저는 시험해 보지 않았지만 예전에 5용 패키
지를 떠올려보면.. 전 못믿겠습니다. -_-
아무튼.. 나름대로 여러가지 궁여지책을 생각하다가 디자인타임 패키지는
델파이에서 컴파일 하는 방법을 선택했습니다.
디자인타임 패키지는 bpl만 있어도 되기 때문이죠.
아무튼, 정리된 설치방법은 다음과 같습니다.
1. Theme Manager를 설치한다.
패키지파일의 이름은 ThemeManager.bpk입니다. 이 파일을 컴파일한 후 인스톨
하시면 됩니다.
- 패키지 옵션에 보시면 뒷첨자로 '6'이 지정되어 있으므로 실제 컴파일된
bpl 파일은 ThemeManager6.bpl이 됩니다. 또한 디렉토리 경로들을 보시면
bpl파일은 bin 디렉토리에, lib파일은 lib 디렉토리에, obj파일은 lib\obj에
생성되게 해 놨습니다.
- 컴파일 후에 자동 생성된 hpp 파일들을 $(BCB)\include로 이동시켜 놓으시면
좀 더 편리하더군요..
- 제가 올려놓은 ThemeManager BCB용 패키지에는 약간 수정된 ThemeMgr.pas
파일이 들어 있습니다.
수정된 내용은 앞쪽에
{$HPPEMIT '#pragma resource "WinXP.res"'}
한 라인이 추가되어 있습니다.
이 라인을 추가하고 winxp.res파일을 $(BCB)\lib\obj에 복사해 놓으면
매번 프로젝트에 winxp.res를 수동으로 첨가해 줘야 하는 수고를 덜 수 있
습니다. 이 내용은 ThemeManager의 개발자에게 메일로 건의해 두었습니다.
- 패키지 이름이 중요합니다. 이름이 바뀌면 상호 의존관계가 깨지기 때문
에.. 따라서 가급적 패키지의 이름은 바꾸지 마시기 바랍니다.
- uxtheme.h 파일의 두 부분을 수정해야 합니다.
typedef enum... 이런 식으로 된 부분을
enum... 이런 식으로 고쳐야 하죠. 고친 파일도 함께 넣어두었습니다.
2. VirtualTree를 설치한다.
일단, 런타임 라이브러리를 설치합니다.
파일명은 VirtualTreeview.bpk입니다.
이 파일을 열어서 컴파일합니다. 인스톨은 당연히 하실 필요가 없죠.
런타임 패키지니까요.
테마메니저와 같은 방식으로 하시면 됩니다.
역시 실제 bpl파일은 VirtualTreeview6.bpl로 나옵니다.
다음은 디자인타임 패키지를 설치합니다. bpl파일이 하나 들어 있을겁니다.
VirtualTreeview6D.bpl 입니다.
이 파일은 제가 델파이 6에서 컴파일 한 것입니다.
Component메뉴의 Install Packages... 에서 직접 설치하시면 됩니다.
파스칼 소스만을 제공하는 컴포넌트들은 항상 패키지를 만들 때 이름 붙이
는게 정말 X같네요... 쩝...
|
설치설명서에 보면..
1. Packages 폴더의 파일과 ThemeMgr.pas를 각각 덮어쓴다.
라고 되어있는데.. 어디에 어떻게 덮어쓰는 것인지. ㅠ.
좀 더 쉬운 설명 부탁드립니다.