CDialogBar Class
The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.
The latest version of this topic can be found at CDialogBar Class.
Provides the functionality of a Windows modeless dialog box in a control bar.
Syntax
class CDialogBar : public CControlBar
Members
Public Constructors
Name | Description |
---|---|
CDialogBar::CDialogBar | Constructs a CDialogBar object. |
Public Methods
Name | Description |
---|---|
CDialogBar::Create | Creates a Windows dialog bar and attaches it to the CDialogBar object. |
Remarks
A dialog bar resembles a dialog box in that it contains standard Windows controls that the user can tab between. Another similarity is that you create a dialog template to represent the dialog bar.
Creating and using a dialog bar is similar to creating and using a CFormView
object. First, use the dialog editor to define a dialog template with the style WS_CHILD and no other style. The template must not have the style WS_VISIBLE. In your application code, call the constructor to construct the CDialogBar
object, then call Create to create the dialog-bar window and attach it to the CDialogBar
object.
For more information on CDialogBar
, see the article Dialog Bars and Technical Note 31, Control Bars.
Note
In the current release, a CDialogBar
object cannot host Windows Forms controls. For more information about Windows Forms controls in Visual C++, see Using a Windows Form User Control in MFC.
Inheritance Hierarchy
CDialogBar
Requirements
Header: afxext.h
CDialogBar::CDialogBar
Constructs a CDialogBar
object.
CDialogBar();
CDialogBar::Create
Loads the dialog-box resource template specified by lpszTemplateName
or nIDTemplate
, creates the dialog-bar window, sets its style, and associates it with the CDialogBar
object.
virtual BOOL Create(
CWnd* pParentWnd,
LPCTSTR lpszTemplateName,
UINT nStyle,
UINT nID);
virtual BOOL Create(
CWnd* pParentWnd,
UINT nIDTemplate,
UINT nStyle,
UINT nID);
Parameters
pParentWnd
A pointer to the parent CWnd
object.
lpszTemplateName
A pointer to the name of the CDialogBar
object's dialog-box resource template.
nStyle
The toolbar style. Additional toolbar styles supported are:
CBRS_TOP
Control bar is at top of the frame window.CBRS_BOTTOM
Control bar is at bottom of the frame window.CBRS_NOALIGN
Control bar is not repositioned when the parent is resized.CBRS_TOOLTIPS
Control bar displays tool tips.CBRS_SIZE_DYNAMIC Control bar is dynamic.
CBRS_SIZE_FIXED Control bar is fixed.
CBRS_FLOATING Control bar is floating.
CBRS_FLYBY
Status bar displays information about the button.CBRS_HIDE_INPLACE Control bar is not displayed to the user.
nID
The control ID of the dialog bar.
nIDTemplate
The resource ID of the CDialogBar
object's dialog-box template.
Return Value
Nonzero if successful; otherwise 0.
Remarks
If you specify the CBRS_TOP
or CBRS_BOTTOM
alignment style, the dialog bar's width is that of the frame window and its height is that of the resource specified by nIDTemplate
. If you specify the CBRS_LEFT
or CBRS_RIGHT
alignment style, the dialog bar's height is that of the frame window and its width is that of the resource specified by nIDTemplate
.
Example
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;
}
See Also
MFC Sample CTRLBARS
CControlBar Class
Hierarchy Chart
CFormView Class
CControlBar Class