CMFCMenuBar 클래스
도킹을 구현하는 메뉴 모음입니다. 더 자세한 내용은 Visual Studio 설치의 VC\atlmfc\src\mfc 폴더에 있는 소스 코드를 참조하세요.
구문
class CMFCMenuBar : public CMFCToolbar
멤버
공용 메서드
이름 | 설명 |
---|---|
CMFCMenuBar::AdjustLocations | ( CMFCToolBar::AdjustLocations 을 재정의합니다.) |
CMFCMenuBar::AllowChangeTextLabels | 도구 모음 단추의 이미지 아래에 텍스트 레이블을 표시할 수 있는지 여부를 지정합니다. (재정의 CMFCToolBar::AllowChangeTextLabels.) |
CMFCMenuBar::AllowShowOnPaneMenu | ( CPane::AllowShowOnPaneMenu 을 재정의합니다.) |
CMFCMenuBar::CalcFixedLayout | 도구 모음의 가로 크기를 계산합니다. (재정의 CMFCToolBar::CalcFixedLayout.) |
CMFCMenuBar::CalcLayout | ( CMFCToolBar::CalcLayout 을 재정의합니다.) |
CMFCMenuBar::CalcMaxButtonHeight | 도구 모음에서 단추의 최대 높이를 계산합니다. (재정의 CMFCToolBar::CalcMaxButtonHeight.) |
CMFCMenuBar::CanBeClosed | 사용자가 도구 모음을 닫을 수 있는지 여부를 지정합니다. (재정의 CMFCToolBar::CanBeClosed.) |
CMFCMenuBar::CanBeRestored | 시스템이 사용자 지정 후 도구 모음을 원래 상태로 복원할 수 있는지 여부를 결정합니다. (재정의 CMFCToolBar::CanBeRestored.) |
CMFCMenuBar::Create | 메뉴 컨트롤을 만들어 개체에 CMFCMenuBar 연결합니다. |
CMFCMenuBar::CreateEx | 추가 스타일 옵션을 사용하여 CMFCMenuBar 개체를 만듭니다. |
CMFCMenuBar::CreateFromMenu | 개체를 CMFCMenuBar 초기화합니다. 채워진 CMFCMenuBar 에 대한 템플릿 역할을 하는 HMENU 매개 변수를 허용합니다. |
CMFCMenuBar::EnableHelpCombobox | 메뉴 모음의 오른쪽에 있는 도움말 콤보 상자를 사용하도록 설정합니다. |
CMFCMenuBar::EnableMenuShadows | 팝업 메뉴의 그림자를 표시할지 여부를 지정합니다. |
CMFCMenuBar::GetAvailableExpandSize | (재정의 CPane::GetAvailableExpandSize.) |
CMFCMenuBar::GetColumnWidth | 도구 모음 단추의 너비를 반환합니다. (재정의 CMFCToolBar::GetColumnWidth.) |
CMFCMenuBar::GetDefaultMenu | 리소스 파일의 원래 메뉴에 대한 핸들을 반환합니다. |
CMFCMenuBar::GetDefaultMenuResId | 리소스 파일의 원래 메뉴에 대한 리소스 식별자를 반환합니다. |
CMFCMenuBar::GetFloatPopupDirection | |
CMFCMenuBar::GetForceDownArrows | |
CMFCMenuBar::GetHelpCombobox | 도움말 콤보 상자에 대한 포인터를 반환합니다. |
CMFCMenuBar::GetHMenu | 개체에 연결된 메뉴에 대한 핸들을 CMFCMenuBar 반환합니다. |
CMFCMenuBar::GetMenuFont | 메뉴 개체의 현재 전역 글꼴을 반환합니다. |
CMFCMenuBar::GetMenuItem | 제공된 항목 인덱스와 연결된 도구 모음 단추를 반환합니다. |
CMFCMenuBar::GetRowHeight | 도구 모음 단추의 높이를 반환합니다. (재정의 CMFCToolBar::GetRowHeight.) |
CMFCMenuBar::GetSystemButton | |
CMFCMenuBar::GetSystemButtonsCount | |
CMFCMenuBar::GetSystemMenu | |
CMFCMenuBar::HighlightDisabledItems | 비활성화된 메뉴 항목이 강조 표시되어 있는지 여부를 나타냅니다. |
CMFCMenuBar::IsButtonExtraSizeAvailable | 도구 모음에 확장된 테두리가 있는 단추를 표시할 수 있는지 여부를 결정합니다. (재정의 CMFCToolBar::IsButtonExtraSizeAvailable.) |
CMFCMenuBar::IsHighlightDisabledItems | 비활성화된 항목이 강조 표시되어 있는지 여부를 나타냅니다. |
CMFCMenuBar::IsMenuShadows | 팝업 메뉴에 그림자가 그려지는지 여부를 나타냅니다. |
CMFCMenuBar::IsRecentlyUsedMenus | 최근에 사용한 메뉴 명령이 메뉴 모음에 표시되는지 여부를 나타냅니다. |
CMFCMenuBar::IsShowAllCommands | 팝업 메뉴에 모든 명령이 표시되는지 여부를 나타냅니다. |
CMFCMenuBar::IsShowAllCommandsDelay | 짧은 지연 후 메뉴에 모든 명령이 표시되는지 여부를 나타냅니다. |
CMFCMenuBar::LoadState | 레지스트리에서 개체의 CMFCMenuBar 상태를 로드합니다. |
CMFCMenuBar::OnChangeHot | 사용자가 도구 모음에서 단추를 선택할 때 프레임워크에서 호출됩니다. (재정의 CMFCToolBar::OnChangeHot.) |
CMFCMenuBar::OnDefaultMenuLoaded | 프레임 창이 리소스 파일에서 기본 메뉴를 로드할 때 프레임워크에서 호출됩니다. |
CMFCMenuBar::OnSendCommand | ( CMFCToolBar::OnSendCommand 을 재정의합니다.) |
CMFCMenuBar::OnSetDefaultButtonText | 메뉴가 사용자 지정 모드이고 사용자가 메뉴 항목의 텍스트를 변경할 때 프레임워크에서 호출됩니다. |
CMFCMenuBar::OnToolHitTest | ( CMFCToolBar::OnToolHitTest 을 재정의합니다.) |
CMFCMenuBar::P reTranslateMessage | ( CMFCToolBar::PreTranslateMessage 을 재정의합니다.) |
CMFCMenuBar::RestoreOriginalstate | 메뉴가 사용자 지정 모드에 있고 사용자가 메뉴 모음에 대해 다시 설정을 선택하면 프레임워크에서 호출됩니다. |
CMFCMenuBar::SaveState | 레지스트리에 개체의 CMFCMenuBar 상태를 저장합니다. |
CMFCMenuBar::SetDefaultMenuResId | 리소스 파일의 원래 메뉴를 설정합니다. |
CMFCMenuBar::SetForceDownArrows | |
CMFCMenuBar::SetMaximizeMode | MDI 자식 창이 표시 모드를 변경할 때 프레임워크에서 호출됩니다. MDI 자식 창이 새로 최대화되거나 더 이상 최대화되지 않은 경우 이 메서드는 메뉴 모음을 업데이트합니다. |
CMFCMenuBar::SetMenuButtonRTC | 사용자가 메뉴 단추를 동적으로 만들 때 생성되는 런타임 클래스 정보를 설정합니다. |
CMFCMenuBar::SetMenuFont | 애플리케이션의 모든 메뉴에 대한 글꼴을 설정합니다. |
CMFCMenuBar::SetRecentlyUsedMenus | 메뉴 모음에 최근에 사용한 메뉴 명령이 표시되는지 여부를 지정합니다. |
CMFCMenuBar::SetShowAllCommands | 메뉴 모음에 모든 명령이 표시되는지 여부를 지정합니다. |
설명
이 CMFCMenuBar
클래스는 도킹 기능을 구현하는 메뉴 모음입니다. 닫을 수는 없지만 도구 모음과 유사하며 항상 표시됩니다.
CMFCMenuBar
는 최근에 사용한 메뉴 항목 개체를 표시하는 옵션을 지원합니다. 이 옵션을 사용하도록 설정 CMFCMenuBar
하면 처음 볼 때 사용 가능한 명령의 하위 집합만 표시됩니다. 그 후 최근에 사용한 명령이 명령의 원래 하위 집합과 함께 표시됩니다. 또한 사용자는 항상 메뉴를 확장하여 사용 가능한 모든 명령을 볼 수 있습니다. 따라서 사용 가능한 각 명령은 지속적으로 표시하거나 최근에 선택한 경우에만 표시하도록 구성됩니다.
개체를 CMFCMenuBar
사용하려면 주 창 프레임 개체에 포함합니다. 메시지를 처리할 WM_CREATE
때 호출 CMFCMenuBar::Create
또는 CMFCMenuBar::CreateEx
. 사용하는 create 함수에 관계없이 주 프레임 창에 포인터를 전달합니다. 그런 다음 CFrameWndEx::EnableDocking을 호출 하여 도킹을 사용하도록 설정합니다. CFrameWndEx::D ockPane을 호출하여 이 메뉴를 도킹합니다.
예시
다음 예제에서는 CMFCMenuBar
클래스에서 다양한 메서드를 사용하는 방법을 보여 줍니다. 이 예제에서는 창의 스타일을 설정하고, 사용자 지정 단추를 사용하도록 설정하고, 도움말 상자를 사용하도록 설정하고, 팝업 메뉴에 그림자를 사용하도록 설정하고, 메뉴 모음을 업데이트하는 방법을 보여 줍니다. 이 코드 조각은 IE 데모 샘플의 일부입니다.
CMFCMenuBar m_wndMenuBar;
m_wndMenuBar.SetPaneStyle(m_wndMenuBar.GetPaneStyle() | CBRS_SIZE_DYNAMIC);
m_wndMenuBar.EnableCustomizeButton(TRUE, -1, _T(""));
// first parameter is the command ID for the button of the Help combo box
// third parameter is the width of the button for the combo box in pixels.
m_wndMenuBar.EnableHelpCombobox(1, _T("enter text here"), 30);
m_wndMenuBar.EnableMenuShadows();
m_wndMenuBar.SetMaximizeMode(true);
상속 계층 구조
CMFCMenuBar
요구 사항
헤더: afxmenubar.h
CMFCMenuBar::AdjustLocations
메뉴 모음에서 메뉴 항목의 위치를 조정합니다.
virtual void AdjustLocations();
설명
CMFCMenuBar::AllowChangeTextLabels
메뉴 모음의 이미지에서 텍스트 레이블이 허용되는지 여부를 결정합니다.
virtual BOOL AllowChangeTextLabels() const;
Return Value
사용자가 이미지 아래에 텍스트 레이블을 표시하도록 선택할 수 있으면 TRUE를 반환합니다.
설명
CMFCMenuBar::AllowShowOnPaneMenu
virtual BOOL AllowShowOnPaneMenu() const;
Return Value
설명
CMFCMenuBar::CalcFixedLayout
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
매개 변수
[in] bStretch
[in] bHorz
Return Value
설명
CMFCMenuBar::CalcLayout
virtual CSize CalcLayout(
DWORD dwMode,
int nLength = -1);
매개 변수
[in] dwMode
[in] nLength
Return Value
설명
CMFCMenuBar::CalcMaxButtonHeight
virtual int CalcMaxButtonHeight();
Return Value
설명
CMFCMenuBar::CanBeClosed
virtual BOOL CanBeClosed() const;
Return Value
설명
CMFCMenuBar::CanBeRestored
virtual BOOL CanBeRestored() const;
Return Value
설명
CMFCMenuBar::Create
메뉴 컨트롤을 만들고 CMFCMenuBar 개체에 연결합니다.
virtual BOOL Create(
CWnd* pParentWnd,
DWORD dwStyle = AFX_DEFAULT_TOOLBAR_STYLE,
UINT nID = AFX_IDW_MENUBAR);
매개 변수
pParentWnd
[in] 새 CMFCMenuBar
개체의 부모 창에 대한 포인터입니다.
dwStyle
[in] 새 메뉴 모음의 스타일입니다.
nID
[in] 메뉴 모음의 자식 창에 대한 ID입니다.
Return Value
성공하면 TRUE이고, 실패하면 FALSE입니다.
설명
개체를 생성한 후에는 CMFCMenuBar
.를 호출 Create
해야 합니다. 이 메서드는 컨트롤을 CMFCMenuBar
만들고 개체에 CMFCMenuBar
연결합니다.
도구 모음 스타일에 대한 자세한 내용은 CBasePane::SetPaneStyle을 참조 하세요.
CMFCMenuBar::CreateEx
지정된 확장 스타일을 사용하여 CMFCMenuBar 개체를 만듭니다.
virtual BOOL CreateEx(
CWnd* pParentWnd,
DWORD dwCtrlStyle = TBSTYLE_FLAT,
DWORD dwStyle = AFX_DEFAULT_TOOLBAR_STYLE,
CRect rcBorders = CRect(1,
1,
1,
1),
UINT nID =AFX_IDW_MENUBAR);
매개 변수
pParentWnd
[in] 새 CMFCMenuBar
개체의 부모 창에 대한 포인터입니다.
dwCtrlStyle
[in] 새 메뉴 모음에 대한 추가 스타일입니다.
dwStyle
[in] 새 메뉴 모음의 기본 스타일입니다.
rcBorders
[in] CRect
개체의 테두리 크기를 지정하는 매개 변수입니다 CMFCMenuBar
.
nID
[in] 메뉴 모음의 자식 창에 대한 ID입니다.
Return Value
메서드가 성공하면 0이 아닌 경우 그렇지 않으면 0입니다.
설명
도구 모음 스타일 외에도 스타일을 지정하려면 CMFCMenuBar::Create 대신 이 함수를 사용해야 합니다. 자주 사용되는 일부 추가 스타일은 TBSTYLE_TRANSPARENT CBRS_TOP.
추가 스타일 목록은 도구 모음 컨트롤 및 단추 스타일, 일반 컨트롤 스타일 및 일반 창 스타일을 참조하세요.
예시
다음 예제에서는 클래스의 메서드를 CreateEx
사용 하는 방법을 보여 줍니다 CMFCMenuBar
. 이 코드 조각은 IE 데모 샘플의 일부입니다.
CMFCMenuBar m_wndMenuBar;
// The this pointer points to CMainFrame class which extends the CFrameWnd class.
if (!m_wndMenuBar.CreateEx(this, TBSTYLE_TRANSPARENT))
{
TRACE0("Failed to create menubar\n");
return -1; // fail to create
}
CMFCMenuBar::CreateFromMenu
CMFCMenuBar 개체를 초기화합니다. 이 메서드는 CMFCMenuBar
HMENU 매개 변수 뒤의 개체를 모델화합니다.
virtual void CreateFromMenu(
HMENU hMenu,
BOOL bDefaultMenu = FALSE,
BOOL bForceUpdate = FALSE);
매개 변수
hMenu
[in] 메뉴 리소스에 대한 핸들입니다.
CreateFromMenu
는 이 리소스를 에 대한 CMFCMenuBar
템플릿으로 사용합니다.
bDefaultMenu
[in] 새 메뉴가 기본 메뉴인지 여부를 나타내는 부울입니다.
bForceUpdate
[in] 이 메서드가 메뉴 업데이트를 강제로 적용하는지 여부를 나타내는 부울입니다.
설명
메뉴 컨트롤에 메뉴 리소스와 동일한 메뉴 항목을 갖도록 하려면 이 메서드를 사용합니다. CMFCMenuBar::Create 또는 CMFCMenuBar::CreateEx를 호출한 후 이 메서드를 호출합니다.
CMFCMenuBar::EnableHelpCombobox
메뉴 모음의 오른쪽에 있는 도움말 콤보 상자를 사용하도록 설정합니다.
void EnableHelpCombobox(
UINT uiID,
LPCTSTR lpszPrompt = NULL,
int nComboBoxWidth = 150);
매개 변수
uiID
[in] 도움말 콤보 상자의 단추에 대한 명령 ID입니다.
lpszPrompt
[in] 비어 있고 활성 상태가 아닌 경우 프레임워크가 콤보 상자에 표시하는 텍스트를 포함하는 문자열입니다. 예를 들어 "여기에 텍스트 입력"을 입력합니다.
nComboBoxWidth
[in] 콤보 상자의 단추 너비(픽셀)입니다.
설명
도움말 콤보 상자는 Microsoft Word 메뉴 모음의 도움말 콤보 상자와 비슷합니다.
uiID가 0으로 설정된 상태에서 이 메서드를 호출하면 이 메서드는 콤보 상자를 숨깁니다. 그렇지 않으면 이 메서드는 메뉴 모음의 오른쪽에 콤보 상자를 자동으로 표시합니다. 이 메서드를 호출한 후 CMFCMenuBar::GetHelpCombobox를 호출하여 삽입된 CMFCToolBarComboBoxButton 개체에 대한 포인터를 가져옵니다.
CMFCMenuBar::EnableMenuShadows
팝업 메뉴에 그림자를 사용하도록 설정합니다.
static void EnableMenuShadows(BOOL bEnable = TRUE);
매개 변수
bEnable
[in] 팝업 메뉴에 그림자를 사용하도록 설정해야 하는지 여부를 나타내는 부울 매개 변수입니다.
설명
이 메서드가 사용하는 알고리즘은 복잡하며 느린 시스템에서 애플리케이션의 성능을 저하할 수 있습니다.
CMFCMenuBar::GetAvailableExpandSize
virtual int GetAvailableExpandSize() const;
Return Value
설명
CMFCMenuBar::GetColumnWidth
virtual int GetColumnWidth() const;
Return Value
설명
CMFCMenuBar::GetDefaultMenu
원래 메뉴에 대한 핸들을 검색합니다. 프레임워크는 리소스 파일에서 원래 메뉴를 로드합니다.
HMENU GetDefaultMenu() const;
Return Value
메뉴 리소스에 대한 핸들입니다.
설명
애플리케이션이 메뉴를 사용자 지정하는 경우 이 메서드를 사용하여 원래 메뉴에 대한 핸들을 검색할 수 있습니다.
CMFCMenuBar::GetDefaultMenuResId
기본 메뉴의 리소스 식별자를 검색합니다.
UINT GetDefaultMenuResId() const;
Return Value
메뉴 리소스 식별자입니다.
설명
프레임워크는 리소스 파일에서 개체의 CMFCMenuBar
기본 메뉴를 로드합니다.
CMFCMenuBar::GetFloatPopupDirection
int GetFloatPopupDirection(CMFCToolBarMenuButton* pButton);
매개 변수
[in] pButton
Return Value
설명
CMFCMenuBar::GetForceDownArrows
BOOL GetForceDownArrows();
Return Value
설명
CMFCMenuBar::GetHelpCombobox
도움말 콤보 상자에 대한 포인터를 반환합니다.
CMFCToolBarComboBoxButton* GetHelpCombobox();
Return Value
도움말 콤보 상자에 대한 포인터입니다. 도움말 콤보 상자가 숨겨져 있거나 사용하도록 설정되지 않은 경우 NULL입니다.
설명
도움말 콤보 상자는 메뉴 모음의 오른쪽에 있습니다. CMFCMenuBar::EnableHelpCombobox 메서드를 호출하여 이 콤보 상자를 사용하도록 설정합니다.
CMFCMenuBar::GetHMenu
CMFCMenuBar 개체에 연결된 메뉴에 대한 핸들을 검색합니다.
HMENU GetHMenu() const;
CMFCMenuBar::GetMenuFont
현재 메뉴 글꼴을 검색합니다.
static const CFont& GetMenuFont(BOOL bHorz = TRUE);
매개 변수
bHorz
[in] 가로 또는 세로 글꼴을 반환할지 여부를 지정하는 부울 매개 변수입니다. TRUE는 가로 글꼴을 나타냅니다.
Return Value
현재 메뉴 모음 글꼴을 포함하는 CFont 매개 변수에 대한 포인터입니다.
설명
반환된 글꼴은 애플리케이션에 대한 전역 매개 변수입니다. 모든 CMFCMenuBar
개체에 대해 두 개의 전역 글꼴이 유지 관리됩니다. 이러한 별도의 글꼴은 가로 및 세로 메뉴 모음에 사용됩니다.
CMFCMenuBar::GetMenuItem
항목 인덱스를 기반으로 메뉴 모음에서 CMFCToolBarButton 개체를 검색합니다.
CMFCToolBarButton* GetMenuItem(int iItem) const;
매개 변수
iItem
[in] 반환할 메뉴 항목의 인덱스입니다.
Return Value
iItem에서 CMFCToolBarButton
지정한 인덱스와 일치하는 개체에 대한 포인터입니다. 인덱스가 잘못된 경우 NULL입니다.
CMFCMenuBar::GetRowHeight
virtual int GetRowHeight() const;
Return Value
설명
CMFCMenuBar::GetSystemButton
CMFCToolBarMenuButtonsButton* GetSystemButton(
UINT uiBtn,
BOOL bByCommand = TRUE) const;
매개 변수
[in] uiBtn
[in] bByCommand
Return Value
설명
CMFCMenuBar::GetSystemButtonsCount
int GetSystemButtonsCount() const;
Return Value
설명
CMFCMenuBar::GetSystemMenu
CMFCToolBarSystemMenuButton* GetSystemMenu() const;
Return Value
설명
CMFCMenuBar::HighlightDisabledItems
프레임워크에서 비활성화된 메뉴 항목을 강조 표시할지 여부를 제어합니다.
static void HighlightDisabledItems(BOOL bHighlight = TRUE);
매개 변수
bHighlight
[in] 프레임워크에서 사용할 수 없는 메뉴 항목을 강조 표시할지 여부를 나타내는 부울 매개 변수입니다.
설명
기본적으로 프레임워크는 사용자가 마우스 포인터를 놓을 때 사용할 수 없는 메뉴 항목을 강조 표시하지 않습니다.
CMFCMenuBar::IsButtonExtraSizeAvailable
virtual BOOL IsButtonExtraSizeAvailable() const;
Return Value
설명
CMFCMenuBar::IsHighlightDisabledItems
프레임워크에서 사용할 수 없는 메뉴 항목을 강조 표시할지 여부를 나타냅니다.
static BOOL IsHighlightDisabledItems();
Return Value
사용할 수 없는 메뉴 항목이 강조 표시된 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
기본적으로 프레임워크는 사용자가 마우스 포인터를 놓을 때 사용할 수 없는 메뉴 항목을 강조 표시하지 않습니다. CMFCMenuBar::HighlightDisabledItems 메서드를 사용하여 이 기능을 사용하도록 설정합니다.
CMFCMenuBar::IsMenuShadows
프레임워크가 팝업 메뉴에 그림자를 그릴지 여부를 나타냅니다.
static BOOL IsMenuShadows();
Return Value
프레임워크에서 메뉴 그림자를 그리면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
CMFCMenuBar::EnableMenuShadows 메서드를 사용하여 이 기능을 사용하거나 사용하지 않도록 설정합니다.
CMFCMenuBar::IsRecentlyUsedMenus
최근에 사용한 메뉴 명령이 메뉴 모음에 표시되는지 여부를 나타냅니다.
static BOOL IsRecentlyUsedMenus();
Return Value
개체에 최근에 사용한 메뉴 명령이 CMFCMenuBar
표시되면 0이 아니고, 그렇지 않으면 0입니다.
설명
CMFCMenuBar::SetRecentlyUsedMenus 함수를 사용하여 메뉴 모음에 최근에 사용한 메뉴 명령이 표시되는지 여부를 제어합니다.
CMFCMenuBar::IsShowAllCommands
메뉴에 모든 명령이 표시되는지 여부를 나타냅니다.
static BOOL IsShowAllCommands();
Return Value
모든 명령이 CMFCMenuBar
표시되면 0이 아니고, 그렇지 않으면 0입니다.
설명
CMFCMenuBar
모든 명령을 표시하거나 명령의 하위 집합만 표시하도록 개체를 구성할 수 있습니다. 이 기능에 대한 자세한 내용은 CMFCMenuBar 클래스를 참조 하세요.
IsShowAllCommands
이 기능을 개체에 대해 CMFCMenuBar
구성하는 방법을 알려 줍니다. 표시되는 메뉴 명령을 제어하려면 CMFCMenuBar::SetShowAllCommands 및 CMFCMenuBar::SetRecentlyUsedMenus 메서드를 사용합니다.
CMFCMenuBar::IsShowAllCommandsDelay
CMFCMenuBar 개체가 짧은 지연 후 모든 명령을 표시할지 여부를 나타냅니다.
static BOOL IsShowAllCommandsDelay();
Return Value
메뉴 모음에 짧은 지연 후 전체 메뉴가 표시되는 경우 0이 아닌 경우 그렇지 않으면 0입니다.
설명
최근에 사용한 항목을 표시하도록 메뉴 모음을 구성하면 메뉴 모음에 다음 두 가지 방법 중 하나로 전체 메뉴가 표시됩니다.
사용자가 메뉴 아래쪽의 화살표 위에 커서를 놓을 때부터 프로그래밍된 지연 후 전체 메뉴를 표시합니다.
사용자가 메뉴 아래쪽의 화살표를 클릭한 후 전체 메뉴를 표시합니다.
기본적으로 모든 CMFCMenuBar
개체는 짧은 지연 후 전체 메뉴를 표시하는 옵션을 사용합니다. 이 옵션은 클래스에서 CMFCMenuBar
프로그래밍 방식으로 변경할 수 없습니다. 그러나 사용자는 사용자 지정 대화 상자를 사용하여 도구 모음을 사용자 지정하는 동안 동작을 변경할 수 있습니다.
CMFCMenuBar::LoadState
Windows 레지스트리에서 메뉴 모음의 상태를 로드합니다.
virtual BOOL LoadState(
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT)-1);
매개 변수
lpszProfileName
[in] Windows 레지스트리 키의 경로를 포함하는 문자열입니다.
nIndex
[in] 메뉴 모음의 컨트롤 ID입니다.
uiID
[in] 진행 예약된 값입니다.
Return Value
메서드가 성공하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
CMFCMenuBar::SaveState 메서드를 사용하여 메뉴 모음의 상태를 레지스트리에 저장합니다. 저장된 정보에는 메뉴 항목, 도크 상태 및 메뉴 모음의 위치가 포함됩니다.
대부분의 경우 애플리케이션은 호출 LoadState
하지 않습니다. 프레임워크는 작업 영역을 초기화할 때 이 메서드를 호출합니다.
CMFCMenuBar::OnChangeHot
virtual void OnChangeHot(int iHot);
매개 변수
[in] iHot
설명
CMFCMenuBar::OnDefaultMenuLoaded
프레임워크는 리소스 파일에서 메뉴 리소스를 로드할 때 이 메서드를 호출합니다.
virtual void OnDefaultMenuLoaded(HMENU hMenu);
매개 변수
hMenu
[in] 개체에 연결된 메뉴의 핸들입니다 CMFCMenuBar
.
설명
이 함수의 기본 구현은 아무 작업도 수행하지 않습니다. 프레임워크가 리소스 파일에서 메뉴 리소스를 로드한 후 사용자 지정 코드를 실행하도록 이 함수를 재정의합니다.
CMFCMenuBar::OnSendCommand
virtual BOOL OnSendCommand(const CMFCToolBarButton* pButton);
매개 변수
[in] pButton
Return Value
설명
CMFCMenuBar::OnSetDefaultButtonText
프레임워크는 사용자가 메뉴 모음에서 항목의 텍스트를 변경할 때 이 메서드를 호출합니다.
virtual BOOL OnSetDefaultButtonText(CMFCToolBarButton* pButton);
매개 변수
pButton
[in] 사용자가 사용자 지정하려는 CMFCToolBarButton 개체에 대한 포인터입니다.
Return Value
프레임워크가 사용자 변경 내용을 메뉴 모음에 적용하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
이 메서드의 기본 구현은 단추의 텍스트를 사용자가 제공하는 텍스트로 변경합니다.
CMFCMenuBar::OnToolHitTest
virtual INT_PTR OnToolHitTest(
CPoint point,
TOOLINFO* pTI) const;
매개 변수
[in] 점
[in] pTI
Return Value
설명
CMFCMenuBar::P reTranslateMessage
virtual BOOL PreTranslateMessage(MSG* pMsg);
매개 변수
[in] pMsg
Return Value
설명
CMFCMenuBar::RestoreOriginalstate
사용자가 사용자 지정 대화 상자에서 다시 설정을 선택하면 프레임워크에서 호출됩니다.
virtual BOOL RestoreOriginalstate();
Return Value
메서드가 성공하면 0이 아닌 경우 그렇지 않으면 0입니다.
설명
이 메서드는 사용자가 사용자 지정 메뉴에서 다시 설정을 선택할 때 호출됩니다. 이 메서드를 수동으로 호출하여 메뉴 모음의 상태를 프로그래밍 방식으로 다시 설정할 수도 있습니다. 이 메서드는 리소스 파일에서 원래 상태를 로드합니다.
사용자가 다시 설정 옵션을 선택할 때 처리를 수행하려는 경우 이 메서드를 재정의합니다.
CMFCMenuBar::SaveState
CMFCMenuBar 개체의 상태를 Windows 레지스트리에 저장합니다.
virtual BOOL SaveState (
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT)-1);
매개 변수
lpszProfileName
[in] Windows 레지스트리 키의 경로를 포함하는 문자열입니다.
nIndex
[in] 메뉴 모음의 컨트롤 ID입니다.
uiID
[in] 진행 예약된 값입니다.
Return Value
성공하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
일반적으로 애플리케이션은 .를 호출 SaveState
하지 않습니다. 프레임워크는 작업 영역이 serialize될 때 이 메서드를 호출합니다. 자세한 내용은 CWinAppEx::SaveState를 참조하세요.
저장된 정보에는 메뉴 항목, 도크 상태 및 메뉴 모음의 위치가 포함됩니다.
CMFCMenuBar::SetDefaultMenuResId
리소스 ID에 따라 CMFCMenuBar 개체의 기본 메뉴를 설정합니다.
void SetDefaultMenuResId(UINT uiResId);
매개 변수
uiResId
[in] 새 기본 메뉴의 리소스 ID입니다.
설명
CMFCMenuBar::RestoreOriginalstate 메서드는 리소스 파일에서 기본 메뉴를 복원합니다.
CMFCMenuBar::GetDefaultMenuResId 메서드를 사용하여 기본 메뉴를 복원하지 않고 검색합니다.
CMFCMenuBar::SetForceDownArrows
void SetForceDownArrows(BOOL bValue);
매개 변수
[in] bValue
설명
CMFCMenuBar::SetMaximizeMode
MDI가 표시 모드를 변경하고 메뉴 모음을 업데이트해야 하는 경우 프레임워크에서 이 메서드를 호출합니다.
void SetMaximizeMode(
BOOL bMax,
CWnd* pWnd = NULL,
BOOL bRecalcLayout = TRUE);
매개 변수
bMax
[in] 모드를 지정하는 부울입니다. 자세한 내용은 설명 부분을 참조하세요.
pWnd
[in] 변경 중인 MDI 자식 창에 대한 포인터입니다.
bRecalcLayout
[in] 메뉴 모음의 레이아웃을 즉시 다시 계산할지 여부를 지정하는 부울입니다.
설명
MDI 자식 창이 최대화되면 MDI 주 프레임 창에 연결된 메뉴 모음에 시스템 메뉴와 최소화, 최대화 및 닫기 단추가 표시됩니다. bMax가 TRUE이고 pWnd가 NULL이 아니면 MDI 자식 창이 최대화되고 메뉴 모음에 추가 컨트롤이 통합되어야 합니다. 그렇지 않으면 메뉴 모음이 일반 상태로 돌아갑니다.
CMFCMenuBar::SetMenuButtonRTC
사용자가 메뉴 단추를 만들 때 프레임워크에서 사용하는 런타임 클래스 정보를 설정합니다.
void SetMenuButtonRTC(CRuntimeClass* pMenuButtonRTC);
매개 변수
pMenuButtonRTC
[in] CMFCMenuButton 클래스에서 파생된 클래스에 대한 CRuntimeClass 정보입니다.
설명
사용자가 메뉴 모음에 새 단추를 추가하면 프레임워크는 단추를 동적으로 만듭니다. 기본적으로 개체를 만듭니다 CMFCMenuButton
. 프레임워크에서 만드는 단추 개체의 형식을 변경하려면 이 메서드를 재정의합니다.
CMFCMenuBar::SetMenuFont
애플리케이션의 모든 메뉴 모음에 대한 글꼴을 설정합니다.
static BOOL SetMenuFont(
LPLOGFONT lpLogFont,
BOOL bHorz = TRUE);
매개 변수
lpLogFont
[in] 설정할 글꼴을 정의하는 LOGFONT 구조체에 대한 포인터입니다.
bHorz
[in] 세로 글꼴에 lpLogFont 매개 변수를 사용하려면 TRUE, 가로 글꼴에 사용하려면 FALSE입니다.
Return Value
메서드가 성공하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
모든 CMFCMenuBar
개체에 두 개의 글꼴이 사용됩니다. 이러한 별도의 글꼴은 가로 및 세로 메뉴 모음에 사용됩니다.
글꼴 설정은 전역 변수이며 모든 CMFCMenuBar
개체에 영향을 줍니다.
CMFCMenuBar::SetRecentlyUsedMenus
메뉴 모음에 최근에 사용한 메뉴 명령이 표시되는지 여부를 제어합니다.
static void SetRecentlyUsedMenus (BOOL bOn = TRUE);
매개 변수
본
[in] 최근에 사용한 메뉴 명령이 표시되는지 여부를 제어하는 부울입니다.
CMFCMenuBar::SetShowAllCommands
메뉴에 사용 가능한 모든 명령이 표시되는지 여부를 제어합니다.
static void SetShowAllCommands(BOOL bShowAllCommands = TRUE);
매개 변수
bShowAllCommands
[in] 팝업 메뉴에 모든 메뉴 명령이 표시되는지 여부를 지정하는 부울 매개 변수입니다.
설명
메뉴에 모든 메뉴 명령이 표시되지 않으면 거의 사용되지 않는 명령이 숨겨집니다. 메뉴 명령을 표시하는 방법에 대한 자세한 내용은 CMFCMenuBar 클래스를 참조 하세요.