컴포넌트의 OnCustomDrawSubItem이란 이벤트를 작성하게 되면
이 이벤트가 일어날 때 컴포넌트 내부의 함수가 호출이 되지 않습니다.
procedure TNiceSideBar.DrawItem(ACanvas: TCanvas; Rc: TRect; Str: string;
States: TSideBarStates; ImageIndex: Integer); <--- 바로 이 함수...
그러니까 제가 이벤트 핸들러을 작성할려면 위 함수의 기능까지 코딩하고 제가 특별히 처리해 주어야
할 부분까지도 코딩해야 하는데요...
제가 처리해야 될 내용만 처리 하고 나머지는 컴포넌트가 원래 동작하는데로 나두고 싶은데
어떤 방법이 없을 까요?
즉 이렇게 OnCustomDrawSubItem의 이벤트 핸들러를 작성하고..
procedure TFormDigitalPA.NSBarCustomDrawSubItem(Sender: TObject;
ACanvas: TCanvas; Rc: TRect; Str: string; States: TSideBarStates);
begin
// 기존의 컴포넌트의 동작...
// 제가 처리하고 싶은 동작...
end;
이렇게 구성하고 싶다 이겁니다. Sender를 형변환하여 DrawItem함수를 호출할려고도 했지만,
이함수가 Protect로 선언되어 있어서 상속을 받거나 내부적으로 호출할수 밖에 없더군요..
제가 델파이를 시작한지 얼마 안된는 초보라 되도록이면 자세한 설명 부탁드립니다.
|