子コントロールを持つコンポーネント
TBitBtnを二つ配置して、OKボタンとキャンセルボタンを持たせるようなコンポーネントを作成する時に、__property TBitBtn* OkButton = { read = FOkButton }; とかやっておくと、設計時にプロパティエディタでプロパティを設定する事はできるのだが、TBitBtnに関するプロパティは実行時に反映せず、プロパティの値も元に戻ってしまう。
__fastcall TMyPanel::TMyPanel (TComponent* Owner)
: TPanel (Owner),
FOkButton (new TBitBtn (this)),
FCancelButton (new TBitBtn (this))
{
FOkButton->SetSubComponent (true);
FCancelButton->SetSubCmponent (true);
}
: TPanel (Owner),
FOkButton (new TBitBtn (this)),
FCancelButton (new TBitBtn (this))
{
FOkButton->SetSubComponent (true);
FCancelButton->SetSubCmponent (true);
}
と子コントロールのSetSubComponentにtureを渡してやる事で、設定が可能になる。
| 固定リンク
| コメント (0)
| トラックバック (0)