|
TCollection, TCollectionItem 을 사용 해 보기 위해서 델파이 책을 보면서 빌더로 작업을 하고 있는데요.. 막히는 곳이 있네요..
/* LnchPad.h */
class TddgLaunchPad;
class TRunBtnItem : public TCollectionItem
{
.............
public:
__fastcall TRunBtnItem(TCollection* Collection);
__fastcall ~TRunBtnItem(void);
};
class TRunButtons : public TCollection
{
..............
public:
__fastcall TRunButtons(TddgLaunchPad* LaunchPad);
};
class TddgLaunchPad : public TScrollBox
{
............
public:
__fastcall TddgLaunchPad(TComponent* Owner);
__fastcall ~TddgLaunchPad(void);
};
/* LnchPad.cpp */
/* TRunBtnItem */
__fastcall TRunBtnItem::TRunBtnItem(TCollection* Collection) : TCollectionItem(Collection)
{
TCollectionItem::TCollectionItem(Collection);
............
}
//---------------------------------------------------------------------------
__fastcall TRunBtnItem::~TRunBtnItem(void)
{
..........
TCollectionItem::~TCollectionItem();
}
//---------------------------------------------------------------------------
.......
/* TRunButtons */
__fastcall TRunButtons::TRunButtons(TddgLaunchPad* LaunchPad) : TCollection(TRunBtnItem)
~~~~~~~~~~~~~~~~~~~~~~~ <-- 여기하구요...
{
TCollection::TCollection(TRunBtnItem);
~~~~~~~~~~~~~~~~~~~~~~~~ <-- 여기하구요...
..........
}
//---------------------------------------------------------------------------
.......
/* TddgLaunchPad */
__fastcall TddgLaunchPad::TddgLaunchPad(TComponent* Owner) : TScrollBox(Owner)
{
TScrollBox::TScrollBox(Owner);
.....
}
//---------------------------------------------------------------------------
__fastcall TddgLaunchPad::~TddgLaunchPad(void)
{
.........
TScrollBox::~TScrollBox();
}
위에 밑줄친 부분에서 문제가 생기네요. TCollection::TCollection(클래스 타입); 이렇게 돼야 할것 같은데, TRunBtnItem 을 사용하니 안되는 군요.. 어떻게 해야 할까요?
|