송득보 님이 쓰신 글 :
: 안녕하세요. 컴포넌트를 계승받아 제작해보고 있는데요..
:
: 기존 상위 객체의 이벤트나 메소드 등.. 오브젝트 인스펙터에 보이는
:
: 프로퍼티중 필요한 것만 빼고 나머지는 오브젝트 인스펙터 자체에서
:
: 보이지 않게 하고싶습니다. 어떤 방법이 있습니까?
:
: 예를 들어..TPanel을 계승 받아 TAdvPanel이라는 것을 만들었다고 칠때
:
: TPanel에서 계승받은 Caption이라는 property가 TAdvPanel의 오브젝트 인스펙터에서는
:
: 보이지 않도록 하려면 어떻게 정의를 해야 하는지요?
:
: -locke
:
컴포넌트를 선언할 때 published 절에 있는 프로퍼티는 델파이 IDE의 오브직트 인스펙터에
나타나게 됩니다. 따라서 부모 클래스에 published절에 선언이 되어 있다면 오브직트 인스펙터에
나타나지 않도록 할 수 없습니다.
TPanel의 경우를 보면 TCustomPanel -> TPanel 이렇게 상속되는데, TCustomPanel에는 대부분의
프로퍼티가 public 으로 선언되어 있습니다. 따라서 질문하신 내용처럼 하려면
TCustomPanel에서 상속받은 후 필요한 부분들을 published에 정의하시면 됩니다.
- civilian
|