CMFCPopupMenu 클래스
Windows 팝업 메뉴 기능을 구현하고 분리 메뉴, 도구 설명 같은 기능을 추가하여 확장합니다. 더 자세한 내용은 Visual Studio 설치의 VC\atlmfc\src\mfc 폴더에 있는 소스 코드를 참조하세요.
구문
class CMFCPopupMenu : public CMiniFrameWnd
멤버
보호된 생성자
속성 | 설명 |
---|---|
CMFCPopupMenu::CMFCPopupMenu | CMFCPopupMenu 개체를 생성합니다. |
공용 메서드
보호된 메서드
속성 | 설명 |
---|---|
CMFCPopupMenu::CreateTearOffBar | |
CMFCPopupMenu::OnChangeHot | |
CMFCPopupMenu::OnChooseItem |
설명
일반적으로 MFC는 팝업 메뉴를 자동으로 만듭니다. 개체를 CMFCPopupMenu
수동으로 만들려면 힙에 개체를 할당한 다음 CMFCPopupMenu::Create를 호출 합니다.
예시
다음 예제에서는 팝업 메뉴 개체를 구성하는 방법을 보여 줍니다. 이 예제에서는 팝업 메뉴의 로고 및 소리를 설정하고, 애니메이션 속도 및 유형을 설정하고, 팝업 메뉴가 주 프레임 외부에 표시되면 메뉴 그림자를 그리고, 최대 너비를 설정하고, 팝업 메뉴의 올바른 메뉴 맞춤을 설정하는 방법을 보여 줍니다. 이 코드 조각은 사용자 지정 페이지 샘플의 일부입니다.
// 30 is the size of the logo in pixels.
pPopupMenu->EnableMenuLogo(30);
pPopupMenu->EnableMenuSound();
// 500 is the animation speed in milliseconds.
pPopupMenu->SetAnimationSpeed(500);
pPopupMenu->SetAnimationType(CMFCPopupMenu::SLIDE);
pPopupMenu->SetForceShadow(true);
// 200 is the maximum width of the pop-up menu in pixels.
pPopupMenu->SetMaxWidth(200);
pPopupMenu->SetRightAlign();
pPopupMenu->InsertSeparator();
상속 계층 구조
CMFCPopupMenu
요구 사항
헤더: afxpopupmenu.h
CMFCPopupMenu::ActivatePopupMenu
static BOOL __stdcall ActivatePopupMenu(
CFrameWnd* pTopFrame,
CMFCPopupMenu* pPopupMenu);
매개 변수
[in] pTopFrame
[in] pPopupMenu
Return Value
설명
CMFCPopupMenu::AlwaysShowEmptyToolsEntry
사용자 정의 도구에 대한 빈 항목을 표시하도록 팝업 메뉴를 사용할 수 있는지 여부를 설정합니다.
static void AlwaysShowEmptyToolsEntry(BOOL bShow = TRUE);
매개 변수
bShow
[in] 팝업 메뉴에 빈 항목이 표시되면 TRUE입니다. 그렇지 않으면 FALSE입니다.
CMFCPopupMenu::AreAllCommandsShown
BOOL AreAllCommandsShown() const;
Return Value
설명
CMFCPopupMenu::CheckArea
팝업 메뉴를 기준으로 지점의 위치를 결정합니다.
MENUAREA_TYPE CheckArea(const CPoint& ptScreen) const;
매개 변수
ptScreen
[in] 화면 좌표의 점입니다.
Return Value
점이 팝업 메뉴를 기준으로 하는 위치를 나타내는 MENUAREA_TYPE 매개 변수입니다.
설명
MENUAREA_TYPE 매개 변수는 다음 값 중 하나를 가질 수 있습니다.
외부 - ptScreen 이 팝업 메뉴 외부에 있습니다.
LOGO - ptScreen 이 로고 영역 위에 있습니다.
TEAROFF_CAPTION - ptScreen 은 눈물 캡션을 통해입니다.
SHADOW_BOTTOM - ptScreen 은 팝업 메뉴의 아래쪽 그림자 위에 있습니다.
SHADOW_RIGHT - ptScreen 이 팝업 메뉴의 오른쪽 그림자 위에 있습니다.
MENU - ptScreen 이 명령을 통해 표시됩니다.
CMFCPopupMenu::CloseMenu
void CloseMenu(BOOL bSetFocusToBar = FALSE);
매개 변수
[in] bSetFocusToBar
설명
CMFCPopupMenu::CMFCPopupMenu
CMFCPopupMenu 개체를 생성합니다.
CMFCPopupMenu(
CMFCToolBarsMenuPropertyPage* pCustPage,
LPCTSTR lpszTitle);
매개 변수
pCustPage
[in] 사용자 지정 페이지에 대한 포인터입니다.
lpszTitle
[in] 메뉴 캡션이 포함된 문자열입니다.
설명
이 메서드는 에 대한 CMFCPopupMenu
리소스를 할당합니다. 팝업 메뉴 항목을 만들려면 CMFCPopupMenu::Create를 호출 합니다.
CMFCPopupMenu::Create
팝업 메뉴를 만들어 CMFCPopupMenu 개체에 연결합니다.
virtual BOOL Create(
CWnd* pWndParent,
int x,
int y,
HMENU hMenu,
BOOL bLocked = FALSE,
BOOL bOwnMessage = FALSE);
매개 변수
pWndParent
[in] 에 대한 부모 창입니다 CMFCPopupMenu
.
x
[in] 팝업 메뉴의 위치에 대한 가로 화면 좌표
y
[in] 팝 메뉴의 위치에 대한 세로 화면 좌표입니다.
hMenu
[in] 메뉴 리소스에 대한 핸들입니다.
막힌
[in] 메뉴를 사용자 지정할 수 있는지 여부를 나타내는 부울 매개 변수입니다. FALSE는 팝업 메뉴를 사용자 지정할 수 있음을 나타냅니다.
bOwnMessage
[in] 프레임워크가 메뉴 메시지를 라우팅하는 방법을 나타내는 부울 매개 변수입니다. 자세한 내용은 설명 섹션을 참조하세요.
Return Value
메서드가 성공하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
bOwnMessage가 TRUE이면 프레임워크는 모든 메뉴 메시지를 pWndParent로 라우팅합니다. bOwnMessage가 TRUE이면 pWndParent가 NULL이 아니어야 합니다. bOwnMessage가 FALSE이면 프레임워크는 메뉴 메시지를 부모 팝업 메뉴로 라우팅합니다.
예시
다음 예제에서는 클래스의 메서드를 Create
사용 하는 방법을 보여 줍니다 CMFCPopuMenu
. 이 코드 조각은 사용자 지정 페이지 샘플의 일부입니다.
CMFCPopupMenu *pPopupMenu = new CMFCPopupMenu;
// CPoint point
// CMenu* pPopup
// The this pointer points to CMainFrame class which extends the CFrameWnd class.
pPopupMenu->Create(this, point.x, point.y, pPopup->Detach());
CMFCPopupMenu::CreateTearOffBar
virtual CPane* CreateTearOffBar(
CFrameWnd* pWndMain,
UINT uiID,
LPCTSTR lpszName);
매개 변수
[in] pWndMain
[in] uiID
[in] lpszName
Return Value
설명
CMFCPopupMenu::D efaultMouseClickOnClose
virtual BOOL DefaultMouseClickOnClose() const;
Return Value
설명
CMFCPopupMenu::EnableMenuLogo
팝업 메뉴의 로고를 초기화합니다.
void EnableMenuLogo(
int iLogoSize,
LOGO_LOCATION nLogoLocation = MENU_LOGO_LEFT);
매개 변수
iLogoSize
[in] 로고의 크기(픽셀)입니다.
nLogoLocation
[in] 로고의 위치를 나타내는 열거형 데이터 형식입니다.
설명
로고를 표시하려면 주 프레임 창에서 CFrameWndEx::OnDrawMenuLogo 메서드를 구현합니다.
nLogoLocation에 사용할 수 있는 값은 MENU_LOGO_LEFT, MENU_LOGO_RIGHT, MENU_LOGO_TOP 및 MENU_LOGO_BOTTOM.
CMFCPopupMenu::EnableMenuSound
메뉴 소리를 사용하도록 설정합니다.
static void EnableMenuSound(BOOL bEnable = TRUE);
매개 변수
bEnable
[in] 소리를 사용하도록 설정하려면 TRUE, 그렇지 않으면 FALSE입니다.
설명
소리를 사용하도록 설정하면 사용자가 팝업 메뉴를 열거나 메뉴 명령을 선택할 때 프레임워크에서 PlaySound 메서드를 호출합니다. 기본적으로 이 기능은 사용하도록 설정되어 있습니다.
CMFCPopupMenu::EnableResize
void EnableResize(CSize sizeMinResize);
매개 변수
[in] sizeMinResize
설명
CMFCPopupMenu::EnableScrolling
void EnableScrolling(BOOL = TRUE);
매개 변수
[in] BOOL
설명
CMFCPopupMenu::EnableVertResize
void EnableVertResize(int nMinResize);
매개 변수
[in] nMinResize
설명
CMFCPopupMenu::FindSubItemByCommand
CMFCToolBarMenuButton* FindSubItemByCommand(UINT uiCmd) const;
매개 변수
[in] uiCmd
Return Value
설명
CMFCPopupMenu::GetActiveMenu
현재 활성 메뉴를 반환합니다.
static CMFCPopupMenu* GetActiveMenu();
Return Value
활성 팝업 메뉴에 대한 포인터이거나, 현재 활성화된 팝업 메뉴가 없는 경우 NULL입니다.
설명
각 애플리케이션에는 최대 하나의 활성 팝업 메뉴가 있을 수 있습니다.
CMFCPopupMenu::GetAnimationSpeed
팝업 메뉴의 애니메이션 속도를 반환합니다.
static UINT GetAnimationSpeed();
Return Value
팝업 메뉴 애니메이션이 완료되는 데 걸리는 시간(밀리초)을 나타내는 정수입니다.
설명
애니메이션 속도는 전역 값입니다. CMFCPopupMenu::SetAnimationSpeed를 사용하여 팝업 메뉴의 애니메이션 속도를 변경합니다.
CMFCPopupMenu::GetAnimationType
팝업 애니메이션의 현재 형식을 반환합니다.
static CMFCPopupMenu::ANIMATION_TYPE GetAnimationType(BOOL bNoSystem = FALSE);
매개 변수
bNoSystem
[in] 이 메서드가 전역 값을 확인하는지 여부를 나타내는 부울 매개 변수입니다. 이 메서드가 CMFCPopupMenu 클래스의 이 인스턴스에 대한 애니메이션 스타일을 반환하도록 하려면 FALSE입니다.
Return Value
애니메이션 형식을 설명하는 열거형 값입니다.
설명
팝업 메뉴에 대한 애니메이션 스타일은 애플리케이션에 대해 전역입니다. CMFCPopupMenu::SetAnimationType을 사용하여 애니메이션 스타일을 설정합니다.
다음 표에서는 가능한 애니메이션 유형을 나열합니다.
값 | 설명 |
---|---|
NO_ANIMATION | 팝업 메뉴에 애니메이션이 적용되지 않고 즉시 표시됩니다. |
펴다 | 프레임워크는 왼쪽 위 모서리에서 오른쪽 아래 모서리까지 팝업 메뉴를 표시합니다. |
슬라이드 | 팝업 메뉴가 위에서 아래로 이동합니다. |
사라지다 | 팝업 메뉴는 먼저 투명하게 표시되고 점차 굳어집니다. |
CMFCPopupMenu::GetDropDirection
DROP_DIRECTION GetDropDirection() const;
Return Value
설명
CMFCPopupMenu::GetForceMenuFocus
팝업 메뉴가 표시될 때 포커스가 메뉴 모음으로 반환되는지 여부를 나타냅니다.
static BOOL GetForceMenuFocus();
Return Value
팝업 메뉴가 표시될 때 입력 포커스가 메뉴 모음에 반환되면 TRUE입니다. 팝업 메뉴에 포커스가 유지되면 FALSE입니다.
설명
기본적으로 애플리케이션은 메뉴 모음에 포커스를 반환하지 않습니다. 이 설정을 변경하려면 CMFCPopupMenu::SetForceMenuFocus를 사용합니다.
CMFCPopupMenu::GetForceShadow
static BOOL __stdcall GetForceShadow();
Return Value
설명
CMFCPopupMenu::GetHMenu
연결된 메뉴 리소스에 대한 핸들을 반환합니다.
HMENU GetHMenu();
CMFCPopupMenu::GetMenuBar
팝업 메뉴 내에 포함된 CMFCPopupMenuBar를 반환합니다.
virtual CMFCPopupMenuBar* GetMenuBar();
Return Value
포함된 CMFCPopupMenuBar
에 대한 포인터입니다.
설명
팝업 메뉴에는 포함된 개체가 있습니다 CMFCPopupMenuBar
. 다른 포함된 클래스를 사용하는 경우 파생 클래스에서 이 메서드를 재정의해야 합니다.
CMFCPopupMenu::GetMenuItem
지정된 인덱스에서 메뉴 항목에 대한 포인터를 반환합니다.
CMFCToolBarMenuButton* GetMenuItem(int iIndex) const;
매개 변수
iIndex
[in] 메뉴 항목의 인덱스(0부터 시작)입니다.
Return Value
메뉴 항목에 대한 포인터입니다. 인덱스가 잘못된 경우 NULL입니다.
설명
메뉴 항목은 CMFCToolBarMenuButton 클래스로 표시됩니다. 이 메서드를 호출하면 해당 CMFCToolBarMenuButton
메서드에 대한 포인터가 반환됩니다.
CMFCPopupMenu::GetMenuItemCount
팝업 메뉴의 항목 수를 반환합니다.
int GetMenuItemCount() const;
Return Value
메뉴의 항목 수입니다.
CMFCPopupMenu::GetMessageWnd
프레임워크가 팝업 메뉴 메시지를 라우팅하는 창에 대한 포인터를 반환합니다.
CWnd* GetMessageWnd() const;
Return Value
팝업 메뉴 메시지를 받는 창에 대한 포인터입니다. 창이 없으면 NULL입니다.
설명
CMFCPopupMenu::Create 메서드를 사용하여 팝업 메뉴를 만드는 경우 메뉴 메시지를 받는 창을 지정합니다.
CMFCPopupMenu::GetParentArea
virtual CWnd* GetParentArea(CRect& rectParentBtn);
매개 변수
[in] rectParentBtn
Return Value
설명
CMFCPopupMenu::GetParentButton
부모 도구 모음 단추에 대한 포인터를 반환합니다.
CMFCToolBarMenuButton* GetParentButton() const;
Return Value
부모 도구 모음 단추에 대한 포인터입니다. 팝업 메뉴에 부모 도구 모음 단추가 없는 경우 NULL입니다.
설명
A는 CMFCPopupMenu
메뉴의 단추와 연결할 수 있습니다. 이 시나리오에서는 사용자가 부모 도구 모음 단추를 선택하면 팝업 메뉴가 나타납니다.
팝업 메뉴가 바로 가기 메뉴인 경우 부모 도구 모음 단추가 없습니다.
CMFCPopupMenu::GetParentPopupMenu
부모 팝업 메뉴에 대한 포인터를 반환합니다.
CMFCPopupMenu* GetParentPopupMenu() const;
Return Value
부모 CMFCPopupMenu
개체에 대한 포인터입니다. 부모 팝업 메뉴가 없는 경우 NULL입니다.
설명
팝업 메뉴에는 하위 메뉴인 경우에만 부모 CMFCPopupMenu
개체가 있습니다.
CMFCPopupMenu::GetParentRibbonElement
CMFCRibbonBaseElement* GetParentRibbonElement() const;
Return Value
설명
CMFCPopupMenu::GetParentToolBar
부모 도구 모음에 대한 포인터를 반환합니다.
CMFCToolBar* GetParentToolBar() const;
Return Value
부모 도구 모음에 대한 포인터입니다. 팝업 메뉴에 부모 도구 모음이 없으면 NULL입니다.
설명
CMFCPopupMenu
바로 가기 메뉴인 경우 부모 도구 모음이 없습니다.
CMFCPopupMenu::GetQuickCustomizeType
QUICK_CUSTOMIZE_TYPE GetQuickCustomizeType() const;
Return Value
설명
CMFCPopupMenu::GetSelItem
현재 선택한 메뉴 명령에 대한 포인터를 반환합니다.
CMFCToolBarMenuButton* GetSelItem();
Return Value
현재 선택한 메뉴 명령에 대한 포인터입니다. 항목이 선택되지 않은 경우 NULL입니다.
설명
팝업 메뉴의 메뉴 명령은 CMFCToolBarMenuButton 클래스 또는 에서 CMFCToolBarMenuButton
파생된 클래스로 표시됩니다.
CMFCPopupMenu::HasBeenResized
BOOL HasBeenResized() const;
Return Value
설명
CMFCPopupMenu::HideRarelyUsedCommands
팝업 메뉴가 거의 사용되지 않는 명령을 숨길 수 있는지 여부를 나타냅니다.
BOOL HideRarelyUsedCommands() const;
Return Value
팝업 메뉴가 거의 사용되지 않는 명령을 숨길 수 있으면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
이 메서드는 팝업 메뉴가 거의 사용되지 않는 명령을 숨길 수 있는지 여부만 지정합니다. 해당 구성을 사용하는 경우는 아닙니다. 부모 단추가 있고 부모 창이 CMFCMenuBar 클래스에서 파생된 경우 팝업 메뉴는 거의 사용되지 않는 명령을 숨길 수 있습니다. CMFCMenuBar::SetRecentlyUsedMenus를 사용하여 이 기능을 사용하도록 설정하고 CMFCMenuBar::IsRecentlyUsedMenus를 사용하여 이 기능이 현재 사용하도록 설정되어 있는지 확인합니다. 부모 창에 대해 이러한 메서드를 모두 호출해야 합니다.
CMFCPopupMenu::InCommand
virtual BOOL InCommand();
Return Value
설명
CMFCPopupMenu::InsertItem
지정된 위치의 팝업 메뉴에 새 항목을 삽입합니다.
int InsertItem(
const CMFCToolBarMenuButton& button,
int iInsertA = -1);
매개 변수
단추
[in] 추가할 메뉴 항목에 대한 참조입니다.
iInsertAt
[in] 새 항목에 대한 인덱스(0부터 시작하는 인덱스)입니다. iInsertAt가 -1이면 항목이 메뉴 끝에 추가됩니다.
Return Value
항목이 삽입된 위치의 인덱스(0부터 시작하는 인덱스)입니다. 메서드가 실패하면 -1입니다.
설명
현재 팝업 메뉴에 있는 항목 수보다 큰 정수와 같이 iInsertAt에 잘못된 값을 제공하면 이 메서드가 실패합니다.
CMFCPopupMenu::InsertSeparator
지정한 위치의 팝업 메뉴에 구분 기호를 삽입합니다.
int InsertSeparator(int iInsertAt = -1);
매개 변수
iInsertAt
[in] 이 메서드가 구분 기호를 삽입할 위치의 인덱스(0부터 시작하는 인덱스)입니다.
Return Value
구분 기호가 삽입된 위치의 인덱스(0부터 시작하는 인덱스)입니다. 이 메서드가 실패하면 -1입니다.
설명
iInsertAt의 경우 -1 값은 이 메서드가 팝업 메뉴의 끝에 구분 기호를 추가함을 의미합니다.
iInsertAt가 잘못된 값이면 이 메서드가 실패합니다.
CMFCPopupMenu::IsAlwaysClose
virtual BOOL IsAlwaysClose() const;
Return Value
설명
CMFCPopupMenu::IsAlwaysShowEmptyToolsEntry
static BOOL __stdcall IsAlwaysShowEmptyToolsEntry();
Return Value
설명
CMFCPopupMenu::IsCustomizePane
팝업 메뉴가 QuickCustomizePane으로 작동하는지 여부를 나타냅니다.
BOOL IsCustomizePane();
Return Value
팝업이 QuckCustomizePane이면 TRUE이고, 그렇지 않으면 FALSE입니다.
설명
QuickCustomizePane을 사용하여 사용자가 팝업 메뉴를 직접 사용자 지정할 수 있습니다. QuickCustomizePane은 CMFCPopupMenu
사용자가 도구 모음 단추를 클릭하여 직접 편집할 때 나타나는 것입니다.
애플리케이션은 CMDIFrameWndEx::OnShowCustomizePane 중에 이 메서드를 호출해야 합니다.
CMFCPopupMenu::IsEscClose
BOOL IsEscClose();
Return Value
설명
CMFCPopupMenu::IsIdle
팝업 메뉴가 현재 유휴 상태인지 여부를 나타냅니다.
virtual BOOL IsIdle() const;
Return Value
팝업 메뉴가 유휴 모드인 경우 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
기본적으로 팝업 메뉴는 표시 애니메이션이 완료되고 사용자가 팝업 메뉴를 스크롤하지 않는 경우 유휴 모드입니다.
CMFCPopupMenu::IsMenuSound
static UINT __stdcall IsMenuSound();
Return Value
설명
CMFCPopupMenu::IsQuickCustomize
연결된 CMFCToolBarMenuButton 클래스 가 QuickCustomize 모드인지 여부를 확인합니다.
BOOL IsQuickCustomize();
Return Value
연결된 메뉴 단추가 QuickCustomize 모드인 경우 TRUE입니다. 그렇지 않으면 FALSE입니다. 팝업 메뉴가 에 연결되어 있지 않은 경우에도 이 메서드는 FALSE를 CMFCToolBarMenuButton
반환합니다.
설명
QuickCustomize 모드에서 사용자는 도구 모음에서 단추를 선택하여 단추를 직접 사용자 지정합니다.
CMFCPopupMenu::IsResizeble
BOOL IsResizeble() const;
Return Value
설명
CMFCPopupMenu::IsRightAlign
메뉴가 오른쪽 맞춤인지 왼쪽 맞춤인지를 나타냅니다.
BOOL IsRightAlign() const;
Return Value
메뉴가 오른쪽 맞춤인 경우 TRUE입니다. 메뉴가 왼쪽 맞춤인 경우 FALSE입니다.
설명
CMFCPopupMenu::SetRightAlign을 사용하여 메뉴 맞춤을 설정할 수 있습니다. 기본적으로 팝업 메뉴는 왼쪽 맞춤을 사용합니다.
메뉴 맞춤은 전역 설정이 아니며 팝업 메뉴마다 다를 수 있습니다.
CMFCPopupMenu::IsScrollable
BOOL IsScrollable() const;
Return Value
설명
CMFCPopupMenu::IsSendMenuSelectMsg
사용자가 팝업 메뉴에서 명령을 선택할 때 프레임워크가 부모 프레임에 알릴지 여부를 나타냅니다.
static BOOL IsSendMenuSelectMsg();
Return Value
프레임워크가 부모 프레임에 알리면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
프레임워크는 사용된 항목이 메뉴 명령을 선택할 때 WM_MENUSELECT 메시지를 전송하여 부모 프레임에 알립니다.
CMFCPopupMenu::IsShown
팝업 메뉴가 현재 표시되는지 여부를 나타냅니다.
BOOL IsShown() const;
Return Value
팝업 메뉴가 표시되면 TRUE이고, 그렇지 않으면 FALSE입니다.
CMFCPopupMenu::MoveTo
void MoveTo(const CPoint& pt);
매개 변수
[in] pt
설명
CMFCPopupMenu::OnChangeHot
virtual void OnChangeHot(int nHot);
매개 변수
[in] nHot
설명
CMFCPopupMenu::OnChooseItem
virtual void OnChooseItem(UINT uidCmdID);
매개 변수
[in] uidCmdID
설명
CMFCPopupMenu::OnCmdMsg
virtual BOOL OnCmdMsg(
UINT nID,
int nCode,
void* pExtra,
AFX_CMDHANDLERINFO* pHandlerInfo);
매개 변수
[in] nID
[in] nCode
[in] pExtra
[in] pHandlerInfo
Return Value
설명
CMFCPopupMenu::P ostCommand
BOOL PostCommand(UINT uiCommandID);
매개 변수
[in] uiCommandID
Return Value
설명
CMFCPopupMenu::P reTranslateMessage
virtual BOOL PreTranslateMessage(MSG* pMsg);
매개 변수
[in] pMsg
Return Value
설명
CMFCPopupMenu::RecalcLayout
virtual void RecalcLayout(BOOL bNotify = TRUE);
매개 변수
[in] bNotify
설명
CMFCPopupMenu::RemoveAllItems
팝업 메뉴에서 모든 항목을 지웁니다.
void RemoveAllItems();
CMFCPopupMenu::RemoveItem
팝업 메뉴에서 지정된 항목을 제거합니다.
BOOL RemoveItem(int iIndex);
매개 변수
iIndex
[in] 삭제할 항목의 인덱스(0부터 시작하는 인덱스)입니다.
Return Value
메서드가 성공하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
이 메서드는 항목 제거의 영향을 받는 모든 구분 기호를 자동으로 정렬합니다. 프레임워크가 구분 기호를 다시 정렬하는 방법에 대한 자세한 내용은 CMFCToolBar::RemoveButton을 참조하세요.
CMFCPopupMenu::SaveState
virtual void SaveState();
설명
CMFCPopupMenu::SetAnimationSpeed
팝업 메뉴의 애니메이션 속도를 설정합니다.
static void SetAnimationSpeed(UINT nElapse);
매개 변수
nElapse
[in] 새 애니메이션 속도(밀리초)입니다.
설명
애니메이션 속도는 전역 값이며 애플리케이션의 모든 팝업 메뉴에 영향을 줍니다. 이 값은 팝업 메뉴가 완료되는 데 걸리는 시간을 지정합니다.
기본적으로 이 매개 변수는 30밀리초로 설정됩니다. nElapse의 유효한 값 범위는 0에서 200까지입니다.
CMFCPopupMenu::SetAnimationType
이 팝업 메뉴의 애니메이션 유형을 설정합니다.
static void SetAnimationType(CMFCPopupMenu::ANIMATION_TYPE type);
매개 변수
type
[in] 애니메이션의 형식을 지정하는 열거형 데이터 형식입니다.
설명
형식에 대한 유효한 값 목록은 CMFCPopupMenu::GetAnimationType을 참조하세요.
CMFCPopupMenu::SetAutoDestroy
void SetAutoDestroy(BOOL bAutoDestroy = TRUE);
매개 변수
[in] bAutoDestroy
설명
CMFCPopupMenu::SetDefaultItem
팝업 메뉴의 기본 명령을 설정합니다.
void SetDefaultItem(UINT uiCmd);
매개 변수
uiCmd
[in] 새 기본 명령의 메뉴 명령 ID입니다.
설명
팝업 메뉴의 기본 명령은 팝업 메뉴가 나타날 때 선택된 명령입니다.
CMFCPopupMenu::SetForceMenuFocus
팝업 메뉴가 표시되면 입력 포커스가 메뉴 모음으로 돌아가도록 합니다.
static void SetForceMenuFocus(BOOL bValue);
매개 변수
bValue
[in] 팝업 메뉴가 표시될 때 프레임워크에서 입력 포커스를 메뉴 모음에 강제로 적용하려면 TRUE입니다. 팝업 메뉴가 포커스를 유지하도록 하려면 FALSE입니다.
설명
이 메서드는 애플리케이션의 모든 팝업 메뉴에 대해 전역 플래그를 설정합니다. 기본적으로 이 기능은 사용하도록 설정되지 않습니다.
CMFCPopupMenu::SetForceShadow
팝업 메뉴가 주 프레임 외부에 표시되면 프레임워크에서 메뉴 그림자를 강제로 그립니다.
static void SetForceShadow(BOOL bValue);
매개 변수
bValue
[in] 프레임워크에서 메뉴 그림자를 그리려면 TRUE, 그렇지 않으면 FALSE입니다.
설명
이 메서드를 호출하면 애플리케이션에서 전역 플래그가 설정됩니다. 이 플래그는 애플리케이션의 모든 팝업 메뉴에 영향을 줍니다.
CMFCPopupMenu::SetMaxWidth
팝업 메뉴의 최대 너비를 설정합니다.
void SetMaxWidth(int iMaxWidth);
매개 변수
iMaxWidth
[in] 팝업 메뉴의 최대 너비(픽셀)입니다.
설명
메뉴 명령과 연결된 텍스트가 최대 너비에 맞지 않으면 잘리고 맞지 않는 부분은 세 개의 점으로 바뀝니다.
CMFCPopupMenu::SetMessageWnd
void SetMessageWnd(CWnd* pMsgWnd);
매개 변수
[in] pMsgWnd
설명
CMFCPopupMenu::SetParentRibbonElement
void SetParentRibbonElement(CMFCRibbonBaseElement* pElem);
매개 변수
[in] pElem
설명
CMFCPopupMenu::SetQuickCustomizeType
void SetQuickCustomizeType(QUICK_CUSTOMIZE_TYPE Type);
매개 변수
[in] 형
설명
CMFCPopupMenu::SetQuickMode
void SetQuickMode();
설명
CMFCPopupMenu::SetRightAlign
팝업 메뉴의 메뉴 맞춤을 설정합니다.
void SetRightAlign(BOOL bRightAlign = TRUE);
매개 변수
bRightAlign
[in] 메뉴 맞춤을 나타내는 부울입니다. TRUE는 오른쪽 맞춤을 나타내고, FALSE는 왼쪽 맞춤을 나타냅니다.
설명
기본적으로 모든 팝업 메뉴는 왼쪽에 정렬됩니다.
CMFCPopupMenu::SetSendMenuSelectMsg
사용자가 명령을 선택할 때 팝업 메뉴가 부모 프레임에 알릴지 여부를 제어하는 플래그를 설정합니다.
static void SetSendMenuSelectMsg(BOOL bSet = TRUE);
매개 변수
bSet
[in] 팝업 메뉴가 부모 프레임에 알리면 TRUE이고, 그렇지 않으면 FALSE입니다.
설명
애플리케이션의 모든 팝업 메뉴에 대한 전역 옵션입니다. 사용하도록 설정된 경우 팝업 메뉴는 사용자가 명령을 선택할 때 부모 프레임에 WM_MENUSELECT 메시지를 보냅니다.
CMFCPopupMenu::ShowAllCommands
팝업 메뉴가 모든 명령을 표시하도록 합니다.
void ShowAllCommands();
설명
전역 설정이 아니며 현재 팝업 메뉴에만 영향을 줍니다.
CMFCPopupMenu::TriggerResize
void TriggerResize();
설명
CMFCPopupMenu::UpdateAllShadows
열려 있는 모든 팝업 메뉴의 그림자를 업데이트합니다.
static void UpdateAllShadows(LPRECT lprectScreen = NULL);
매개 변수
lprectScreen
[in] 업데이트할 영역을 화면 좌표로 지정하는 사각형입니다.
설명
이 메서드는 팝업 메뉴 애니메이션 컨트롤 또는 동적 콘텐츠가 있는 다른 창에 표시 되는 경우에 유용 합니다.
CMFCPopupMenu::UpdateShadow
팝업 메뉴의 그림자를 업데이트합니다.
void UpdateShadow(LPRECT lprectScreen = NULL);
매개 변수
lprectScreen
[in] 업데이트할 영역의 경계를 지정하는 사각형(화면 좌표)입니다.
설명
그림자가 있는 팝업 메뉴가 애니메이션 이미지와 겹치는 경우 이 메서드를 호출합니다.