Image 객체와 Edit 객체가 결합된 컴포넌트를 만들려고 합니다.
즉, Image 객체 위에 Edit 객체가 겹쳐있는 형태의 것입니다.
Image 객체를 상속받고, 그 위에 Edit 객체를 생성시키려고 하였습니다.
그런데, 컴파일과정에서 에러가 생기더군요.
에러가 발생하는 부분은 다음과 같습니다.
EdDisplay := TEdit.Create(self);
EdDisplay.Parent := self; <==== 바로 이곳에서 self 부분입니다.
에러 메시지는 다음과 같습니다.
Incompitible Types : "TWinControl" and "TTest"
여기서 Test는 제가 만들려는 컴포넌트의 이름입니다.
그런데, 이것을 Panel을 상속받아서 하는 것으로 하면,
즉, Panel 객체 위에 Edit 객체가 있는것으로 만들면
위의 부분에서 에러가 발생하지 않더군요.
이 문제를 어떻게 해결해야 할까요?
고수님들의 조언 부탁드립니다.
즉, Parent로 사용되어질 수 없죠.
TImage를 상속받지 마시고 이렇게 하세요.
TPanel에서 상속을 받고, 생성시에 TImage를 생성시킨 후 Parent를 Self로 주시면 판넬위에 그림이 생성이 됩니다. 그것을 사용하시고, Edit고 마찬가지로 하세요.
물론 헤제시에 모두 Free시켜 주시는것 잊지 마시구요~
박인재 께서 말씀하시기를...
> Image 객체와 Edit 객체가 결합된 컴포넌트를 만들려고 합니다.
>
> 즉, Image 객체 위에 Edit 객체가 겹쳐있는 형태의 것입니다.
>
> Image 객체를 상속받고, 그 위에 Edit 객체를 생성시키려고 하였습니다.
>
> 그런데, 컴파일과정에서 에러가 생기더군요.
>
> 에러가 발생하는 부분은 다음과 같습니다.
>
> EdDisplay := TEdit.Create(self);
> EdDisplay.Parent := self; <==== 바로 이곳에서 self 부분입니다.
>
> 에러 메시지는 다음과 같습니다.
>
> Incompitible Types : "TWinControl" and "TTest"
>
> 여기서 Test는 제가 만들려는 컴포넌트의 이름입니다.
>
> 그런데, 이것을 Panel을 상속받아서 하는 것으로 하면,
>
> 즉, Panel 객체 위에 Edit 객체가 있는것으로 만들면
>
> 위의 부분에서 에러가 발생하지 않더군요.
>
> 이 문제를 어떻게 해결해야 할까요?
>
> 고수님들의 조언 부탁드립니다.
>
>
>