CDialogBar クラス

コントロール バー内の Windows のモードレス ダイアログ ボックスの機能を提供します。

構文

class CDialogBar : public CControlBar

メンバー

パブリック コンストラクター

名前 説明
CDialogBar::CDialogBar CDialogBar オブジェクトを構築します。

パブリック メソッド

名前 説明
CDialogBar::Create Windows ダイアログ バーを作成し、オブジェクトに CDialogBar アタッチします。

解説

ダイアログ バーは、ユーザーがタブを開くことができる標準の Windows コントロールが含まれているという点で、ダイアログ ボックスに似ています。 もう 1 つの類似点は、ダイアログ バーを表すダイアログ テンプレートを作成することです。

ダイアログ バーの作成と使用は、オブジェクトの作成と使用 CFormView に似ています。 まず、ダイアログ エディター使用して、スタイル WS_CHILDを持ち、他のスタイルを持たないダイアログ テンプレートを定義します。 テンプレートにはスタイル WS_VISIBLEを含めてはなりません。 アプリケーション コードで、コンストラクターを呼び出してオブジェクトを CDialogBar 構築し、呼び出 Create してダイアログ バー ウィンドウを作成し、オブジェクトに CDialogBar アタッチします。

詳細については、ダイアログ バーとテクニカル ノート 31 コントロール バーに関CDialogBarする記事を参照してください。

Note

現在のリリースでは、CDialogBar オブジェクトで Windows フォーム コントロールをホストすることはできません。 Visual C++ のWindows フォーム コントロールの詳細については、「MFC での Windows フォーム ユーザー コントロールの使用」を参照してください

継承階層

CObject

CCmdTarget

CWnd

CControlBar

CDialogBar

必要条件

ヘッダー: afxext.h

CDialogBar::CDialogBar

CDialogBar オブジェクトを構築します。

CDialogBar();

CDialogBar::Create

指定された lpszTemplateName ダイアログ ボックス リソース テンプレートを読み込み、ダイアログ nIDTemplateバー ウィンドウを作成し、そのスタイルを設定して、オブジェクトに CDialogBar 関連付けます。

virtual BOOL Create(
    CWnd* pParentWnd,
    LPCTSTR lpszTemplateName,
    UINT nStyle,
    UINT nID);

virtual BOOL Create(
    CWnd* pParentWnd,
    UINT nIDTemplate,
    UINT nStyle,
    UINT nID);

パラメーター

pParentWnd
CWnd オブジェクトへのポインター。

lpszTemplateName
オブジェクトのダイアログ ボックス リソース テンプレートの CDialogBar 名前へのポインター。

nStyle
ツール バーのスタイル。 サポートされるその他のツール バー スタイルは次のとおりです。

  • CBRS_TOPコントロール バーはフレーム ウィンドウの上部にあります。

  • CBRS_BOTTOMコントロール バーはフレーム ウィンドウの下部にあります。

  • CBRS_NOALIGNコントロール バーは、親のサイズを変更しても再配置されません。

  • CBRS_TOOLTIPSコントロール バーにツール ヒントが表示されます。

  • CBRS_SIZE_DYNAMIC: コントロール バーは動的になります。

  • CBRS_SIZE_FIXED: コントロール バーは固定になります。

  • コントロール バー CBRS_FLOATING浮動です。

  • CBRS_FLYBYステータス バーには、ボタンに関する情報が表示されます。

  • CBRS_HIDE_INPLACEコントロール バーはユーザーに表示されません。

nID
ダイアログ バーのコントロール ID。

nIDTemplate
オブジェクトの CDialogBar ダイアログ ボックス テンプレートのリソース ID。

戻り値

正常終了した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

CBRS_TOPまたはCBRS_BOTTOM配置スタイルを指定した場合、ダイアログ バーの幅はフレーム ウィンドウの幅になり、高さは nIDTemplate指定されたリソースの幅になります。 CBRS_LEFTまたはCBRS_RIGHT配置スタイルを指定した場合、ダイアログ バーの高さはフレーム ウィンドウの高さになり、幅は nIDTemplate指定されたリソースの高さになります。

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
   if (CMDIFrameWnd::OnCreate(lpCreateStruct) == -1)
      return -1;

   EnableDocking(CBRS_ALIGN_ANY);

   // m_wndDlgBar is a CDialogBar member of CMainFrame
   // IDD_DIALOGBAR - Resource ID of the dialog
   // template. This dialog template should be created
   // with  the  style  WS_CHILD and no other style.
   // The template must not have the style WS_VISIBLE.
   if (!m_wndDlgBar.Create(this, IDD_DIALOGBAR,
                           CBRS_LEFT | CBRS_TOOLTIPS | CBRS_FLYBY, IDD_DIALOGBAR))
   {
      TRACE0("Failed to create DlgBar\n");
      return -1; // Fail to create.
   }

   return 0;
}

関連項目

MFC サンプル CTRLBARS
CControlBar Class
階層図
CFormView クラス
CControlBar Class