« BDEエリアスとTSession | トップページ | F1004 コンパイラの内部エラー (BCB6 + boost 1.33.1) »

2010-02-13

子コントロールを持つコンポーネント

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);
}

と子コントロールのSetSubComponenttureを渡してやる事で、設定が可能になる。

|

« BDEエリアスとTSession | トップページ | F1004 コンパイラの内部エラー (BCB6 + boost 1.33.1) »

CBuilder」カテゴリの記事

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: 子コントロールを持つコンポーネント:

« BDEエリアスとTSession | トップページ | F1004 コンパイラの内部エラー (BCB6 + boost 1.33.1) »