CMFCToolBarsCustomizeDialog 클래스
사용자가 애플리케이션에서 도구 모음, 메뉴, 바로 가기 키, 사용자 정의 도구 및 비주얼 스타일을 사용자 지정할 수 있는 모덜리스 탭 대화 상자( CPropertySheet 클래스)입니다. 일반적으로 사용자가 도구 메뉴에서 사용자 지정 을 선택하여 이 대화 상자에 액세스합니다.
사용자 지정 대화 상자에는 명령, 도구 모음, 도구, 키보드, 메뉴 및 옵션의 6개 탭이 있습니다.
구문
class CMFCToolBarsCustomizeDialog : public CPropertySheet
멤버
공용 생성자
속성 | 설명 |
---|---|
CMFCToolBarsCustomizeDialog::CMFCToolBarsCustomizeDialog | CMFCToolBarsCustomizeDialog 개체를 생성합니다. |
CMFCToolBarsCustomizeDialog::~CMFCToolBarsCustomizeDialog |
소멸자 |
공용 메서드
이름 | 설명 |
---|---|
CMFCToolBarsCustomizeDialog::AddButton | 명령 페이지의 명령 목록에 도구 모음 단추를 삽입합니다. |
CMFCToolBarsCustomizeDialog::AddMenu | 리소스에서 메뉴를 로드하고 CMFCToolBarsCustomizeDialog::AddMenuCommands를 호출하여 명령 페이지의 명령 목록에 해당 메뉴를 추가합니다. |
CMFCToolBarsCustomizeDialog::AddMenuCommands | 리소스에서 메뉴를 로드하고 CMFCToolBarsCustomizeDialog::AddMenuCommands를 호출하여 명령 페이지의 명령 목록에 해당 메뉴를 추가합니다. |
CMFCToolBarsCustomizeDialog::AddToolBar | 리소스에서 도구 모음을 로드합니다. 그런 다음 메뉴의 각 명령에 대해 CMFCToolBarsCustomizeDialog::AddButton 메서드를 호출하여 지정된 범주 아래 명령 페이지의 명령 목록에 단추를 삽입합니다. |
CMFCToolBarsCustomizeDialog::Create | 사용자 지정 대화 상자를 표시합니다. |
CMFCToolBarsCustomizeDialog::EnableTools |
향후 사용을 위해 예약되어 있습니다. |
CMFCToolBarsCustomizeDialog::EnableUserDefinedToolbars | 사용자 지정 대화 상자를 사용하여 새 도구 모음을 만들거나 사용하지 않도록 설정합니다. |
CMFCToolBarsCustomizeDialog::FillAllCommandsList | 제공된 CListBox 개체를 모든 명령 범주의 명령으로 채웁니다 . |
CMFCToolBarsCustomizeDialog::FillCategoriesComboBox | 사용자 지정 대화 상자에서 제공된 CComboBox 개체를 각 명령 범주의 이름으로 채웁니다. |
CMFCToolBarsCustomizeDialog::FillCategoriesListBox | 사용자 지정 대화 상자에서 제공된 CListBox 개체를 각 명령 범주의 이름으로 채웁니다. |
CMFCToolBarsCustomizeDialog::GetCommandName | 지정된 명령 ID와 연결된 이름을 검색합니다. |
CMFCToolBarsCustomizeDialog::GetCountInCategory | 제공된 목록에서 지정된 텍스트 레이블이 있는 항목 수를 검색합니다. |
CMFCToolBarsCustomizeDialog::GetFlags | 대화 상자의 동작에 영향을 주는 플래그 집합을 검색합니다. |
CMFCToolBarsCustomizeDialog::GetThisClass |
프레임워크에서 이 클래스 형식과 연결된 CRuntimeClass 개체에 대한 포인터를 가져오는 데 사용됩니다. |
CMFCToolBarsCustomizeDialog::OnEditToolbarMenuImage | 사용자가 도구 모음 단추 또는 메뉴 항목 아이콘을 사용자 지정할 수 있도록 이미지 편집기를 시작합니다. |
CMFCToolBarsCustomizeDialog::OnInitDialog | 속성 시트 초기화를 보강하도록 재정의합니다. (재정의 CPropertySheet::OnInitDialog.) |
CMFCToolBarsCustomizeDialog::P ostNcDestroy | 창이 제거된 후 프레임워크에서 호출됩니다. ( CPropertySheet::PostNcDestroy 을 재정의합니다.) |
CMFCToolBarsCustomizeDialog::RemoveButton | 지정된 범주 또는 모든 범주에서 지정된 명령 ID가 있는 단추를 제거합니다. |
CMFCToolBarsCustomizeDialog::RenameCategory | 명령 탭의 범주 목록 상자에 있는 범주 의 이름을 바꿉니다 . |
CMFCToolBarsCustomizeDialog::ReplaceButton | 명령 탭의 명령 목록에 있는 단추를 새 도구 모음 단추 개체로 바꿉니다. |
CMFCToolBarsCustomizeDialog::SetUserCategory | 명령 탭에 표시될 범주 목록에 범주를 추가합니다 . |
보호된 메서드
속성 | 설명 |
---|---|
CMFCToolBarsCustomizeDialog::CheckToolsValidity | 프레임워크에서 호출하여 사용자 정의 도구 목록이 유효한지 여부를 확인합니다. |
CMFCToolBarsCustomizeDialog::OnAfterChangeTool | 사용자 정의 도구의 속성이 변경되면 프레임워크에서 호출됩니다. |
CMFCToolBarsCustomizeDialog::OnAssignKey | 지정된 바로 가기 키를 작업에 할당할 수 있는지 여부를 결정합니다. |
CMFCToolBarsCustomizeDialog::OnBeforeChangeTool | 사용자 정의 도구를 변경할 수 있는지 여부를 결정합니다. |
CMFCToolBarsCustomizeDialog::OnInitToolsPage | 사용자가 도구 탭을 선택할 때 프레임워크에서 호출됩니다. |
설명
사용자 지정 대화 상자를 표시하려면 개체를 CMFCToolBarsCustomizeDialog
만들고 CMFCToolBarsCustomizeDialog::Create 메서드를 호출합니다.
사용자 지정 대화 상자가 활성화되어 있는 동안 애플리케이션은 사용자를 사용자 지정 작업으로 제한하는 특수 모드에서 작동합니다.
예시
다음 예제에서는 CMFCToolBarsCustomizeDialog
클래스에서 다양한 메서드를 사용하는 방법을 보여 줍니다. 이 예제에서는 명령 페이지의 명령 목록 상자에서 도구 모음 단추를 바꾸고, 사용자 지정 대화 상자를 사용하여 새 도구 모음을 만들고, 사용자 지정 대화 상자를 표시하는 방법을 보여 줍니다. 이 코드 조각은 IE 데모 샘플의 일부입니다.
pDlgCust->ReplaceButton(ID_FAVORITS_DUMMY,
CMFCToolBarMenuButton((UINT)-1, menuFavorites, -1, strFavorites));
pDlgCust->EnableUserDefinedToolbars();
pDlgCust->Create();
상속 계층 구조
CMFCToolBarsCustomizeDialog
요구 사항
헤더: afxToolBarsCustomizeDialog.h
CMFCToolBarsCustomizeDialog::AddButton
명령 페이지의 명령 목록에 도구 모음 단추를 삽입합니다.
void AddButton(
UINT uiCategoryId,
const CMFCToolBarButton& button,
int iInsertBefore=-1);
void AddButton(
LPCTSTR lpszCategory,
const CMFCToolBarButton& button,
int iInsertBefore=-1);
매개 변수
uiCategoryId
[in] 단추를 삽입할 범주 ID를 지정합니다.
단추
[in] 삽입할 단추를 지정합니다.
iInsertBefore
[in] 단추가 삽입되기 전에 도구 모음 단추의 인덱스(0부터 시작)를 지정합니다.
lpszCategory
[in] 단추를 삽입할 범주 문자열을 지정합니다.
설명
이 메서드는 AddButton
표준 명령 ID(예: ID_FILE_MRU_FILE1), 허용되지 않는 명령(CMFCToolBar::IsCommandPermitted 참조) 및 더미 단추가 있는 단추를 무시합니다.
이 메서드는 단추의 런타임 클래스를 사용하여 동일한 형식 button
(일반적으로 CMFCToolBarButton 클래스)의 새 개체를 만듭니다. 그런 다음 CMFCToolBarButton::CopyFrom을 호출하여 단추의 데이터 멤버를 복사하고 지정된 범주에 복사본을 삽입합니다.
새 단추가 삽입되면 알림을 받습니다 OnAddToCustomizePage
.
-1이면 iInsertBefore
단추가 범주 목록에 추가되고, 그렇지 않으면 지정된 인덱스가 있는 항목 앞에 삽입됩니다.
예시
다음 예제에서는 클래스의 메서드를 AddButton
사용 하는 방법을 보여 줍니다 CMFCToolBarsCustomizeDialog
. 이 코드 조각은 슬라이더 샘플의 일부입니다.
CMFCToolBarsCustomizeDialog *pDlgCust = new CMFCToolBarsCustomizeDialog(this,
TRUE /* Automatic menus scaning */);
CSliderButton btnSlider(ID_SLIDER);
btnSlider.SetRange(0, 100);
pDlgCust->AddButton(_T("Edit"), btnSlider);
CMFCToolBarsCustomizeDialog::AddMenu
리소스에서 메뉴를 로드하고 CMFCToolBarsCustomizeDialog::AddMenuCommands를 호출하여 명령 페이지의 명령 목록에 해당 메뉴를 추가합니다.
BOOL AddMenu(UINT uiMenuResId);
매개 변수
uiMenuResId
[in] 로드할 메뉴의 리소스 ID를 지정합니다.
Return Value
메뉴가 성공적으로 추가되었으면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
호출AddMenuCommands
에서 bPopup은 FALSE입니다. 따라서 해당 메서드는 하위 메뉴가 포함된 메뉴 항목을 명령 목록에 추가하지 않습니다. 이 메서드는 하위 메뉴의 메뉴 항목을 명령 목록에 추가합니다.
CMFCToolBarsCustomizeDialog::AddMenuCommands
명령 페이지의 명령 목록에 항목을 추가하여 지정된 메뉴의 모든 항목을 나타냅니다.
void AddMenuCommands(
const CMenu* pMenu,
BOOL bPopup,
LPCTSTR lpszCategory=NULL,
LPCTSTR lpszMenuPath=NULL);
매개 변수
pMenu
[in] 추가할 CMenu 개체에 대한 포인터입니다.
bPopup
[in] 명령 목록에 팝업 메뉴 항목을 삽입할지 여부를 지정합니다.
lpszCategory
[in] 메뉴를 삽입할 범주의 이름입니다.
lpszMenuPath
[in] 명령이 모든 범주 목록에 표시되면 이름에 추가되는 접두사입니다.
설명
메서드는 AddMenuCommands
pMenu의 모든 메뉴 항목을 반복합니다. 하위 메뉴가 포함되지 않은 각 메뉴 항목에 대해 이 메서드는 CMFCToolBarButton 클래스 개체를 만들고 CMFCToolBarsCustomizeDialog::AddButton 메서드를 호출하여 명령 페이지의 명령 목록에 메뉴 항목을 도구 모음 단추로 추가합니다. 이 프로세스에서는 구분 기호가 무시됩니다.
bPopup이 TRUE이면 하위 메뉴가 포함된 각 메뉴 항목에 대해 이 메서드는 CMFCToolBarMenuButton 클래스 개체를 만들고 호출AddButton
하여 명령 목록에 삽입합니다. 그렇지 않으면 하위 메뉴가 포함된 메뉴 항목이 명령 목록에 표시되지 않습니다. 두 경우 모두 하위 메뉴가 있는 메뉴 항목이 발견되면 AddMenuCommands
자체적으로 호출하여 pMenu 매개 변수로 하위 메뉴에 포인터를 전달하고 하위 메뉴의 레이블을 lpszMenuPath에 추가합니다.
CMFCToolBarsCustomizeDialog::AddToolBar
리소스에서 도구 모음을 로드합니다. 그런 다음 메뉴의 각 명령에 대해 CMFCToolBarsCustomizeDialog::AddButton 메서드를 호출하여 지정된 범주 아래 명령 페이지의 명령 목록에 단추를 삽입합니다.
BOOL AddToolBar(
UINT uiCategoryId,
UINT uiToolbarResId);
BOOL AddToolBar(
LPCTSTR lpszCategory,
UINT uiToolbarResId);
매개 변수
uiCategoryId
[in] 도구 모음을 추가할 범주의 리소스 ID를 지정합니다.
uiToolbarResId
[in] 명령 목록에 명령이 삽입되는 도구 모음의 리소스 ID를 지정합니다.
lpszCategory
[in] 도구 모음을 추가할 범주의 이름을 지정합니다.
Return Value
메서드가 성공하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
예시
다음 예제에서는 클래스에서 메서드를 AddToolBar
사용 하는 방법을 보여 줍니다 CMFCToolBarsCustomizeDialog
. 이 코드 조각은 워드 패드 샘플의 일부입니다.
CMFCToolBarsCustomizeDialog *pDlgCust = new CMFCToolBarsCustomizeDialog(this,
TRUE /* Automatic menus scaning */,
AFX_CUSTOMIZE_MENU_SHADOWS | AFX_CUSTOMIZE_TEXT_LABELS |
AFX_CUSTOMIZE_MENU_ANIMATIONS);
pDlgCust->AddToolBar(_T("Format"), IDR_FORMATBAR);
설명
각 명령을 나타내는 데 사용되는 컨트롤은 CMFCToolBarButton 클래스 개체입니다. 도구 모음을 추가한 후 CMFCToolBarsCustomizeDialog::ReplaceButton을 호출하여 단추를 파생 형식의 컨트롤로 바꿀 수 있습니다.
CMFCToolBarsCustomizeDialog::CheckToolsValidity
사용자 도구 목록의 유효성을 확인합니다.
virtual BOOL CheckToolsValidity(const CObList& lstTools);
매개 변수
lstTools
[in] 확인할 사용자 정의 도구 목록입니다.
Return Value
사용자 정의 도구 목록이 유효한 경우 TRUE를 반환합니다. 그렇지 않으면 FALSE입니다. 기본 구현은 항상 TRUE를 반환합니다.
설명
프레임워크는 이 메서드를 호출하여 CMFCToolBarsCustomizeDialog::CheckToolsValidity에서 반환된 사용자 정의 도구를 나타내는 개체의 유효성을 확인합니다.
사용자가 대화 상자를 닫기 전에 사용자 도구의 유효성을 검사하려는 경우 파생된 CMFCToolBarsCustomizeDialog
클래스의 메서드를 재정 CheckToolsValidity
의합니다. 사용자가 대화 상자의 오른쪽 위 모서리에 있는 닫기 단추 또는 대화 상자의 오른쪽 아래 모서리에 있는 닫기 단추 중 하나를 클릭할 때 이 메서드가 FALSE를 반환하면 대화 상자에 닫는 대신 도구 탭이 표시됩니다. 사용자가 탭을 클릭하여 도구 탭에서 이동할 때 이 메서드가 FALSE를 반환하면 탐색이 수행되지 않습니다. 유효성 검사가 실패하는 문제를 사용자에게 알리기 위해 적절한 메시지 상자를 표시해야 합니다.
CMFCToolBarsCustomizeDialog::CMFCToolBarsCustomizeDialog
CMFCToolBarsCustomizeDialog
개체를 생성합니다.
CMFCToolBarsCustomizeDialog(
CFrameWnd* pWndParentFrame,
BOOL bAutoSetFromMenus = FALSE,
UINT uiFlags = (AFX_CUSTOMIZE_MENU_SHADOWS | AFX_CUSTOMIZE_TEXT_LABELS | AFX_CUSTOMIZE_MENU_ANIMATIONS | AFX_CUSTOMIZE_NOHELP),
CList <CRuntimeClass*, CRuntimeClass*>* p listCustomPages = NULL);
매개 변수
pWndParentFrame
[in] 부모 프레임에 대한 포인터입니다. 이 매개 변수는 NULL이 아니어야 합니다.
bAutoSetFromMenus
[in] 명령 페이지의 명령 목록에 모든 메뉴의 메뉴 명령을 추가할지 여부를 지정하는 부울 값입니다 . 이 매개 변수가 TRUE이면 메뉴 명령이 추가됩니다. 그렇지 않으면 메뉴 명령이 추가되지 않습니다.
uiFlags
[in] 대화 상자의 동작에 영향을 주는 플래그의 조합입니다. 이 매개 변수는 다음 값 중 하나 이상일 수 있습니다.
AFX_CUSTOMIZE_MENU_SHADOWS
AFX_CUSTOMIZE_TEXT_LABELS
AFX_CUSTOMIZE_MENU_ANIMATIONS
AFX_CUSTOMIZE_NOHELP
AFX_CUSTOMIZE_CONTEXT_HELP
AFX_CUSTOMIZE_NOTOOLS
AFX_CUSTOMIZE_MENUAMPERS
AFX_CUSTOMIZE_NO_LARGE_ICONS
plistCustomPages
[in] 추가 사용자 지정 페이지를 지정하는 개체 목록에 CRuntimeClass
대한 포인터입니다.
설명
plistCustomPages 매개 변수는 추가 사용자 지정 페이지를 지정하는 개체 목록을 CRuntimeClass
나타냅니다. 생성자는 CRuntimeClass::CreateObject 메서드를 사용하여 대화 상자에 페이지를 더 추가합니다. 사용자 지정 대화 상자에 페이지를 더 추가하는 예제는 CustomPages 샘플을 참조하세요.
uiFlags 매개 변수에 전달할 수 있는 값에 대한 자세한 내용은 CMFCToolBarsCustomizeDialog::GetFlags를 참조하세요.
예시
다음 예제에서는 클래스의 개체를 생성하는 방법을 보여 줍니다 CMFCToolBarsCustomizeDialog
. 이 코드 조각은 사용자 지정 페이지 샘플의 일부입니다.
CMFCToolBarsCustomizeDialog *pDlgCust = new CMFCToolBarsCustomizeDialog(this,
TRUE /* Automatic menus scaning */,
AFX_CUSTOMIZE_MENU_SHADOWS | AFX_CUSTOMIZE_TEXT_LABELS |
AFX_CUSTOMIZE_MENU_ANIMATIONS, // default parameters
&lstCustomPages); // pointer to the list of runtime classes of the custom property pages
CMFCToolBarsCustomizeDialog::Create
사용자 지정 대화 상자를 표시합니다.
virtual BOOL Create();
Return Value
사용자 지정 속성 시트가 성공적으로 만들어지면 TRUE이고, 그렇지 않으면 FALSE입니다.
설명
클래스를 Create
완전히 초기화한 후에만 메서드를 호출합니다.
CMFCToolBarsCustomizeDialog::EnableUserDefinedToolbars
사용자 지정 대화 상자를 사용하여 새 도구 모음을 만들거나 사용하지 않도록 설정합니다.
void EnableUserDefinedToolbars(BOOL bEnable=TRUE);
매개 변수
bEnable
[in] TRUE를 사용하여 사용자 정의 도구 모음을 사용하도록 설정합니다. 도구 모음을 사용하지 않도록 설정하려면 FALSE입니다.
설명
bEnable이 TRUE이면 도구 모음 페이지에 새로 만들기, 이름 바꾸기 및 삭제 단추가 표시됩니다.
기본적으로 또는 bEnable이 FALSE이면 이러한 단추가 표시되지 않으며 사용자가 새 도구 모음을 정의할 수 없습니다.
CMFCToolBarsCustomizeDialog::FillAllCommandsList
제공된 CListBox
개체를 모든 명령 범주의 명령으로 채웁니다 .
virtual void FillAllCommandsList(CListBox& wndListOfCommands) const;
매개 변수
wndListOfCommands
[out] 채울 개체에 CListBox
대한 참조입니다.
설명
모든 명령 범주에는 모든 범주의 명령이 포함됩니다. CMFCToolBarsCustomizeDialog::AddButton 메서드는 제공된 단추와 연결된 명령을 모든 명령 범주에 추가합니다.
이 메서드는 모든 명령 범주의 명령으로 채우기 전에 제공된 CListBox
개체의 내용을 지웁니다.
클래스는 CMFCMousePropertyPage
이 메서드를 사용하여 두 번 클릭 이벤트 목록 상자를 채웁다.
CMFCToolBarsCustomizeDialog::FillCategoriesComboBox
사용자 지정 대화 상자에서 제공된 CComboBox
개체를 각 명령 범주의 이름으로 채웁니다.
void FillCategoriesComboBox(
CComboBox& wndCategory,
BOOL bAddEmpty = TRUE) const;
매개 변수
wndCategory
[out] 채울 개체에 CComboBox
대한 참조입니다.
bAddEmpty
[in] 명령이 없는 콤보 상자에 범주를 추가할지 여부를 지정하는 부울 값입니다. 이 매개 변수가 TRUE이면 빈 범주가 콤보 상자에 추가됩니다. 그렇지 않으면 빈 범주가 추가되지 않습니다.
설명
이 메서드는 CMFCToolBarsCustomizeDialog::FillCategoriesListBox 메서드와 비슷하지만 이 메서드는 개체에서 CComboBox
작동합니다.
이 메서드는 개체를 채우기 전에 개체의 CComboBox
내용을 지우지 않습니다. 모든 명령 범주가 콤보 상자의 최종 항목임을 보장합니다.
CMFCToolBarsCustomizeDialog::AddButton 메서드를 사용하여 새 명령 범주를 추가할 수 있습니다. CMFCToolBarsCustomizeDialog::RenameCategory 메서드를 사용하여 기존 범주의 이름을 변경할 수 있습니다.
및 CMFCKeyMapDialog
클래스는 CMFCToolBarsKeyboardPropertyPage
이 메서드를 사용하여 키보드 매핑을 분류합니다.
CMFCToolBarsCustomizeDialog::FillCategoriesListBox
사용자 지정 대화 상자에서 제공된 CListBox
개체를 각 명령 범주의 이름으로 채웁니다.
void FillCategoriesListBox(
CListBox& wndCategory,
BOOL bAddEmpty = TRUE) const;
매개 변수
wndCategory
[out] 채울 개체에 CListBox
대한 참조입니다.
bAddEmpty
[in] 명령이 없는 목록 상자에 범주를 추가할지 여부를 지정하는 부울 값입니다. 이 매개 변수가 TRUE이면 빈 범주가 목록 상자에 추가됩니다. 그렇지 않으면 빈 범주가 추가되지 않습니다.
설명
이 메서드는 CMFCToolBarsCustomizeDialog::FillCategoriesComboBox 메서드와 비슷하지만 이 메서드는 개체에서 CListBox
작동합니다.
이 메서드는 개체를 채우기 전에 개체의 CListBox
내용을 지우지 않습니다. 모든 명령 범주가 목록 상자의 최종 항목임을 보장합니다.
CMFCToolBarsCustomizeDialog::AddButton 메서드를 사용하여 새 명령 범주를 추가할 수 있습니다. CMFCToolBarsCustomizeDialog::RenameCategory 메서드를 사용하여 기존 범주의 이름을 변경할 수 있습니다.
클래스는 CMFCToolBarsCommandsPropertyPage
이 메서드를 사용하여 각 명령 범주와 연결된 명령 목록을 표시합니다.
CMFCToolBarsCustomizeDialog::GetCommandName
지정된 명령 ID와 연결된 이름을 검색합니다.
LPCTSTR GetCommandName(UINT uiCmd) const;
매개 변수
uiCmd
[in] 검색할 명령의 ID입니다.
Return Value
지정된 명령 ID와 연결된 이름이거나, 명령이 없는 경우 NULL입니다.
CMFCToolBarsCustomizeDialog::GetCountInCategory
제공된 목록에서 지정된 텍스트 레이블이 있는 항목 수를 검색합니다.
int GetCountInCategory(
LPCTSTR lpszItemName,
const CObList& lstCommands) const;
매개 변수
lpszItemName
[in] 일치시킬 텍스트 레이블입니다.
lstCommands
[in] 개체가 포함된 목록에 대한 참조입니다 CMFCToolBarButton
.
Return Value
텍스트 레이블이 lpszItemName과 같은 제공된 목록의 항목 수입니다.
설명
제공된 개체 목록의 각 요소는 형식 CMFCToolBarButton
이어야 합니다. 이 메서드는 lpszItemName 과 CMFCToolBarButton::m_strText 데이터 멤버를 비교합니다.
CMFCToolBarsCustomizeDialog::GetFlags
대화 상자의 동작에 영향을 주는 플래그 집합을 검색합니다.
UINT GetFlags() const;
Return Value
대화 상자의 동작에 영향을 주는 플래그 집합입니다.
설명
이 메서드는 생성자에 전달되는 uiFlags 매개 변수의 값을 검색합니다. 반환 값은 다음 값 중 하나 이상이 될 수 있습니다.
속성 | 설명 |
---|---|
AFX_CUSTOMIZE_MENU_SHADOWS | 사용자가 메뉴의 그림자 모양을 지정할 수 있습니다. |
AFX_CUSTOMIZE_TEXT_LABELS | 사용자가 도구 모음 단추 이미지 아래에 텍스트 레이블이 표시되는지 여부를 지정할 수 있습니다. |
AFX_CUSTOMIZE_MENU_ANIMATIONS | 사용자가 메뉴 애니메이션 스타일을 지정할 수 있습니다. |
AFX_CUSTOMIZE_NOHELP | 사용자 지정 대화 상자에서 도움말 단추를 제거합니다. |
AFX_CUSTOMIZE_CONTEXT_HELP | WS_EX_CONTEXTHELP 비주얼 스타일을 사용하도록 설정합니다. |
AFX_CUSTOMIZE_NOTOOLS | 사용자 지정 대화 상자에서 도구 페이지를 제거합니다. 이 플래그는 애플리케이션에서 클래스를 사용하는 경우 유효합니다 CUserToolsManager . |
AFX_CUSTOMIZE_MENUAMPERS | 단추 캡션에 앰퍼샌드( > 문자)를 포함할 수 있습니다. |
AFX_CUSTOMIZE_NO_LARGE_ICONS | 사용자 지정 대화 상자에서 큰 아이콘 옵션을 제거합니다. |
WS_EX_CONTEXTHELP 비주얼 스타일에 대한 자세한 내용은 확장 창 스타일을 참조 하세요.
CMFCToolBarsCustomizeDialog::OnAfterChangeTool
사용자 도구가 발생한 직후 사용자 도구의 변경 내용에 응답합니다.
virtual void OnAfterChangeTool(CUserTool* pSelTool);
매개 변수
pSelTool
[in, out] 변경된 사용자 도구 개체에 대한 포인터입니다.
설명
이 메서드는 사용자가 사용자 정의 도구의 속성을 변경할 때 프레임워크에서 호출됩니다. 기본 구현은 아무 작업도 수행하지 않습니다. 사용자 도구 변경이 발생한 후 처리를 수행하기 위해 파생된 클래스에서 CMFCToolBarsCustomizeDialog
이 메서드를 재정의합니다.
CMFCToolBarsCustomizeDialog::OnAssignKey
사용자가 바로 가기 키를 정의할 때 바로 가기 키의 유효성을 검사합니다.
virtual BOOL OnAssignKey(ACCEL* pAccel);
매개 변수
pAccel
[in, out] ACCEL 구조체로 표현되는 제안된 키보드 할당에 대한 포인터입니다.
Return Value
키를 할당할 수 있으면 TRUE, 키를 할당할 수 없는 경우 FALSE입니다. 기본 구현은 항상 TRUE를 반환합니다.
설명
파생 클래스에서 이 메서드를 재정의하여 사용자가 새 바로 가기 키를 할당할 때 추가 처리를 수행하거나 사용자가 정의할 때 바로 가기 키의 유효성을 검사합니다. 바로 가기가 할당되지 않도록 하려면 FALSE를 반환합니다. 또한 메시지 상자를 표시하거나 사용자에게 바로 가기 키가 거부된 이유를 알려야 합니다.
CMFCToolBarsCustomizeDialog::OnBeforeChangeTool
사용자가 변경 내용을 적용하려고 할 때 사용자 도구 변경 시 사용자 지정 처리를 수행합니다.
virtual void OnBeforeChangeTool(CUserTool* pSelTool);
매개 변수
pSelTool
[in, out] 바꿀 사용자 도구 개체에 대한 포인터입니다.
설명
이 메서드는 사용자 정의 도구의 속성을 변경하려고 할 때 프레임워크에서 호출됩니다. 기본 구현은 아무 작업도 수행하지 않습니다. pSelTool에서 사용하는 리소스 해제와 같이 사용자 도구 변경이 발생하기 전에 처리를 수행하려는 경우 파생된 CMFCToolBarsCustomizeDialog
클래스의 메서드를 재정 OnBeforeChangeTool
의합니다.
CMFCToolBarsCustomizeDialog::OnEditToolbarMenuImage
사용자가 도구 모음 단추 또는 메뉴 항목 아이콘을 사용자 지정할 수 있도록 이미지 편집기를 시작합니다.
virtual BOOL OnEditToolbarMenuImage(
CWnd* pWndParent,
CBitmap& bitmap,
int nBitsPerPixel);
매개 변수
pWndParent
[in] 부모 창에 대한 포인터입니다.
비트맵
[in] 편집할 비트맵 개체에 대한 참조입니다.
nBitsPerPixel
[in] 비트맵 색 해상도(픽셀당 비트)입니다.
Return Value
변경 내용이 커밋되는 경우 TRUE입니다. 그렇지 않으면 FALSE입니다. 기본 구현은 대화 상자를 표시하고 사용자가 확인을 클릭하면 TRUE를 반환하고, 사용자가 취소 또는 닫기 단추를 클릭하면 FALSE를 반환합니다.
설명
이 메서드는 사용자가 이미지 편집기를 실행할 때 프레임워크에서 호출됩니다. 기본 구현에는 CMFCImageEditorDialog 클래스 대화 상자가 표시됩니다. 사용자 지정 이미지 편집기를 사용하도록 파생 클래스에서 재정 OnEditToolbarMenuImage
의합니다.
CMFCToolBarsCustomizeDialog::OnInitDialog
속성 시트 초기화를 보강하도록 재정의합니다.
virtual BOOL OnInitDialog();
Return Value
CPropertySheet::OnInitDialog 메서드를 호출한 결과입니다.
설명
이 메서드는 닫기 단추를 표시하고 대화 상자가 현재 화면 크기에 맞는지 확인하고 도움말 단추를 대화 상자의 왼쪽 아래 모서리로 이동하여 기본 클래스 구현인 CPropertySheet::OnInitDialog를 확장합니다.
CMFCToolBarsCustomizeDialog::OnInitToolsPage
도구 페이지가 초기화될 예정이라는 프레임워크의 알림을 처리합니다.
virtual void OnInitToolsPage();
설명
기본 구현은 아무 작업도 수행하지 않습니다. 이 알림을 처리하려면 파생 클래스에서 이 메서드를 재정의합니다.
CMFCToolBarsCustomizeDialog::P ostNcDestroy
창이 제거된 후 프레임워크에서 호출됩니다.
virtual void PostNcDestroy();
설명
이 메서드는 애플리케이션을 이전 모드로 복원하여 기본 클래스 구현 CPropertySheet::PostNcDestroy
을 확장합니다.
CMFCToolBarsCustomizeDialog::Create 메서드는 애플리케이션을 사용자 지정 작업으로 제한하는 특수 모드로 설정합니다.
CMFCToolBarsCustomizeDialog::RemoveButton
지정된 범주 또는 모든 범주에서 지정된 명령 ID가 있는 단추를 제거합니다.
int RemoveButton(
UINT uiCategoryId,
UINT uiCmdId);
int RemoveButton(
LPCTSTR lpszCategory,
UINT uiCmdId);
매개 변수
uiCategoryId
[in] 단추를 제거할 범주 ID를 지정합니다.
uiCmdId
[in] 단추의 명령 ID를 지정합니다.
lpszCategory
[in] 단추를 제거할 범주의 이름을 지정합니다.
Return Value
제거된 단추의 인덱스(0부터 시작하는 인덱스) 또는 지정된 명령 ID가 지정된 범주에 없는 경우 -1입니다. uiCategoryId가 -1이면 반환 값은 0입니다.
설명
모든 범주에서 단추를 제거하려면 이 메서드의 첫 번째 오버로드를 호출하고 uiCategoryId를 -1로 설정합니다.
CMFCToolBarsCustomizeDialog::RenameCategory
명령 페이지의 범주 목록 상자에 있는 범주 의 이름을 바꿉니다 .
BOOL RenameCategory(
LPCTSTR lpszCategoryOld,
LPCTSTR lpszCategoryNew);
매개 변수
lpszCategoryOld
[in] 변경할 범주 이름입니다.
lpszCategoryNew
[in] 새 범주 이름입니다.
Return Value
메서드가 성공하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
범주 이름은 고유해야 합니다.
CMFCToolBarsCustomizeDialog::ReplaceButton
명령 페이지의 명령 목록 상자에 있는 도구 모음 단추를 바꿉니다 .
void ReplaceButton(
UINT uiCmd,
const CMFCToolBarButton& button);
매개 변수
uiCmd
[in] 바꿀 단추의 명령을 지정합니다.
단추
[in] const
이전 단추를 대체하는 도구 모음 단추 개체에 대한 참조입니다.
설명
CMFCToolBarsCustomizeDialog::AddMenu, CMFCToolBarsCustomizeDialog::AddMenuCommands 또는 CMFCToolBarsCustomizeDialog::AddToolBar는 명령 페이지에 명령을 추가합니다. 이 명령은 CMFCToolBarButton 클래스 개체(또는 사용자가 추가한 AddMenuCommands
하위 메뉴가 포함된 메뉴 항목에 대한 CMFCToolBarMenuButton 클래스 개체) 형식입니다. 또한 프레임워크는 이러한 세 가지 메서드를 호출하여 명령을 자동으로 추가합니다. 대신 명령을 파생 형식으로 나타내려면 파생 형식의 단추를 호출 ReplaceButton
하고 전달합니다.
예시
다음 예제에서는 클래스에서 메서드를 ReplaceButton
사용 하는 방법을 보여 줍니다 CMFCToolBarsCustomizeDialog
. 이 코드 조각은 Visual Studio 데모 샘플의 일부입니다.
// CMFCToolBarsCustomizeDialog* pDlgCust
// CMFCToolBarComboBoxButton comboButtonConfig
pDlgCust->ReplaceButton(ID_DUMMY_SELECT_ACTIVE_CONFIGURATION, comboButtonConfig);
CMFCToolBarsCustomizeDialog::SetUserCategory
명령 페이지의 범주 목록에서 사용자 범주인 범주를 지정합니다 . CMFCToolBarsCustomizeDialog::Create를 호출하기 전에 이 함수를 호출해야 합니다.
BOOL SetUserCategory(LPCTSTR lpszCategory);
매개 변수
lpszCategory
[in] 범주의 이름입니다.
Return Value
메서드가 성공하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
사용자 범주 설정은 현재 프레임워크에서 사용되지 않습니다.