안녕하세요. 천리안 프로그래머 포럼 C++Builder 담당 임펠리테리입니다.
되도록이면 제가 확실히 알지 못하는 개념은 답변을 안하려구 했거든요. 대충 이렇게
해봤더니 되더라..는 식으로(바로 이전에 제가 답변했듯이) 답변을 하고 나면, 그
다음 질문에 대해 말문이 막히게 마련이니까요. 좋은생각님이 지금 그렇다고 하신
것처럼, 저도 이전에 말했듯이 맨땅에 헤딩하면서 알아낸 것들이라 개념을 확실히
잡지 못했습니다. 하지만 좋은생각님은 여러번 번개를 통해 만나뵙고 한 안면도 있고
해서 너무 시간낭비를 하실까봐 아는대로만 적어본건데... 긁적긁적...~
먼저 제가 절대로 모르는 것. 저는 VB는, OCX 개념이 없던 시절에 잠깐 써보고 말았기
때문에, VB에서 OCX가 어떻게 연동되는가 하는 등의 개념에 대해선 전혀 모르겠네요.
지금 제 시스템에 비베가 깔려있기라도 하면 한번 시도라도 해보았겠지만, 그렇지도
않구요. 이 문제는 제가 어떻게든 도움을 드릴 방법이 없겠네요.
그다음으로. 추가한 프로퍼티의 타입을 설정하는 문제. 이것은 조금은 도움을..
타입라이브러리에 추가한 프로퍼티에서 선택가능한 타입은, 이미 기존에 선언된 타입
이거나(olectl.h 혹은 ocidl.h 둘중의 하나겠죠) 혹은, 자체 타입라이브러리에서
추가한 형이어야 합니다. 정확히 장담은 못하겠습니다만, GUID를 가지는 등록된
타입이어야 하는 것 같습니다. 자체 타입라이브러리에서 추가한 타입은 자동으로
GUID가 자동으로 부여되니까요. 타입을 선택하는 콤보박스에서 자세히 보셨으면
아시겠지만, 거의 대부분이 이미 GUID를 가진 타입이거나 기본 타입이죠.
그리고 말씀하신 Tx~ 로 시작되는 타입은, 바로 원본 VCL 컨트롤에서 사용된 타입들
을 OCX로 변환하면서 빌더가 자동으로 생성해준 것들입니다. VCL 타입들 중 기본
타입으로 정의가 안되는 타입들을 빌더가 GUID를 포함해서 만들어준 거죠.
그러니까, 좋은생각님이 원하시는대로 새로운 타입을 추가하려면, 타입라이브러리
에디터의 왼쪽 트리창에서 오른쪽마우스버튼을 눌러 나온 New 메뉴아이템에서 어떤
항목을 선택하여 새 타입을 생성해야 할 거라는 말입니다.
좀 헤메시는 중에 역시 헤메는 대답을 한 거 같아 좀 많이 죄송하네요.
그래도.. 이정도라도 참고라도 되었으면 하는 맘에 적어봤습니다.
그럼 이만...
임펠리테리 박지훈이었습니다.
(
http://www.borlandforum.com, cbuilder@shinhae.com)