次の方法で共有


タブ コントロールの作成

タブ コントロールの作成方法は、ダイアログ ボックスでコントロールを使用しているか、ダイアログ 以外のウィンドウで作成しているかによって異なります。

ダイアログ ボックスで CTabCtrl を直接使用するには

  1. ダイアログ エディターで、タブ コントロールをダイアログ テンプレート リソースに追加します。 コントロール ID を指定します。

  2. メンバー変数の追加ウィザードを使用して、CTabCtrl 型のメンバー変数を Control プロパティと共に追加します。 このメンバーを使用して、 CTabCtrl メンバー関数を呼び出すことができます。

  3. 処理する必要があるタブ コントロール通知メッセージのダイアログ クラスのハンドラー関数をマップします。 詳細については、「 メッセージを関数にマッピングする」を参照してください。

  4. OnInitDialog で、CTabCtrlのスタイルを設定します。

非ダイアログ ウィンドウで CTabCtrl を使用するには

  1. ビューまたはウィンドウ クラスでコントロールを定義します。

  2. 場合によっては、親ウィンドウの OnCreate ハンドラー関数 (コントロールをサブクラス化している場合) と同じくらい早い時点で、OnInitialUpdate で、コントロールの Create メンバー関数を呼び出します。 コントロールのスタイルを設定します。

CTabCtrl オブジェクトが作成されたら、次の拡張スタイルを設定またはクリアできます。

  • TCS_EX_FLATSEPARATORS タブ コントロールは、タブ項目間に区切り記号を描画します。 この拡張スタイルは、TCS_BUTTONSおよびTCS_FLATBUTTONSスタイルを持つタブ コントロールにのみ影響します。 既定では、 TCS_FLATBUTTONS スタイルを使用してタブ コントロールを作成すると、この拡張スタイルが設定されます。

  • TCS_EX_REGISTERDROP タブ コントロールは TCN_GETOBJECT 通知メッセージを生成し、オブジェクトがコントロール内のタブ項目の上にドラッグされたときにドロップ ターゲット オブジェクトを要求します。

    TCN_GETOBJECT通知を受信するには、AfxOleInit を呼び出して OLE ライブラリを初期化する必要があります。

これらのスタイルは、 GetExtendedStyle メンバー関数と SetExtendedStyle メンバー関数をそれぞれの呼び出しで、コントロールの作成後に取得および設定できます。

たとえば、次のコード行で TCS_EX_FLATSEPARATORS スタイルを設定します。

DWORD dwExStyle = m_TabCtrl.GetExtendedStyle();
m_TabCtrl.SetExtendedStyle(dwExStyle | TCS_EX_FLATSEPARATORS);

次のコード行を使用して、 オブジェクトからTCS_EX_FLATSEPARATORS スタイルをクリアします。

DWORD dwExStyle = m_TabCtrl.GetExtendedStyle();
m_TabCtrl.SetExtendedStyle(dwExStyle & ~TCS_EX_FLATSEPARATORS);

これにより、 CTabCtrl オブジェクトのボタン間に表示される区切り記号が削除されます。

こちらも参照ください

CTabCtrl の使用
コントロール