비고
MFC(Microsoft Foundation Classs) 라이브러리는 계속 지원됩니다. 그러나 더 이상 기능을 추가하거나 설명서를 업데이트하지 않습니다.
사용자가 애플리케이션에서 도구 모음, 메뉴, 바로 가기 키, 사용자 정의 도구 및 비주얼 스타일을 사용자 지정할 수 있는 모덜리스 탭 대화 상자( 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 scanning */);
CSliderButton btnSlider(ID_SLIDER);
btnSlider.SetRange(0, 100);
pDlgCust->AddButton(_T("Edit"), btnSlider);
CMFCToolBarsCustomizeDialog::AddMenu
리소스에서 메뉴를 로드하고 CMFCToolBarsCustomizeDialog::AddMenuCommands를 호출하여 명령 페이지의 명령 목록에 해당 메뉴를 추가합니다.
BOOL AddMenu(UINT uiMenuResId);
매개 변수
uiMenuResId
[in] 로드할 메뉴의 리소스 ID를 지정합니다.
반환 값
메뉴가 성공적으로 추가되었으면 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] 도구 모음을 추가할 범주의 이름을 지정합니다.
반환 값
메서드가 성공하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
예시
다음 예제에서는 클래스에서 메서드를 AddToolBar 사용 하는 방법을 보여 줍니다 CMFCToolBarsCustomizeDialog . 이 코드 조각은 워드 패드 샘플의 일부입니다.
CMFCToolBarsCustomizeDialog *pDlgCust = new CMFCToolBarsCustomizeDialog(this,
TRUE /* Automatic menus scanning */,
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] 확인할 사용자 정의 도구 목록입니다.
반환 값
사용자 정의 도구 목록이 유효한 경우 TRUE를 반환합니다. 그렇지 않으면 FALSE입니다. 기본 구현은 항상 TRUE를 반환합니다.
설명
프레임워크는 이 메서드를 호출하여 CMFCToolBarsCustomizeDialog::CheckToolsValidity에서 반환된 사용자 정의 도구를 나타내는 개체의 유효성을 확인합니다.
사용자가 대화 상자를 닫기 전에 사용자 도구의 유효성을 검사하려는 경우 파생된 CheckToolsValidity 클래스의 메서드를 재정 CMFCToolBarsCustomizeDialog 의합니다. 사용자가 대화 상자의 오른쪽 위 모서리에 있는 닫기 단추 또는 대화 상자의 오른쪽 아래 모서리에 있는 닫기 단추 중 하나를 클릭할 때 이 메서드가 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 scanning */,
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();
반환 값
사용자 지정 속성 시트가 성공적으로 만들어지면 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 메서드를 사용하여 기존 범주의 이름을 변경할 수 있습니다.
및 CMFCToolBarsKeyboardPropertyPage 클래스는 CMFCKeyMapDialog 이 메서드를 사용하여 키보드 매핑을 분류합니다.
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입니다.
반환 값
지정된 명령 ID와 연결된 이름이거나, 명령이 없는 경우 NULL입니다.
CMFCToolBarsCustomizeDialog::GetCountInCategory
제공된 목록에서 지정된 텍스트 레이블이 있는 항목 수를 검색합니다.
int GetCountInCategory(
LPCTSTR lpszItemName,
const CObList& lstCommands) const;
매개 변수
lpszItemName
[in] 일치시킬 텍스트 레이블입니다.
lstCommands
[in] 개체가 포함된 목록에 대한 참조입니다 CMFCToolBarButton .
반환 값
텍스트 레이블이 lpszItemName과 같은 제공된 목록의 항목 수입니다.
설명
제공된 개체 목록의 각 요소는 형식 CMFCToolBarButton이어야 합니다. 이 메서드는 lpszItemName 과 CMFCToolBarButton::m_strText 데이터 멤버를 비교합니다.
CMFCToolBarsCustomizeDialog::GetFlags
대화 상자의 동작에 영향을 주는 플래그 집합을 검색합니다.
UINT GetFlags() const;
반환 값
대화 상자의 동작에 영향을 주는 플래그 집합입니다.
설명
이 메서드는 생성자에 전달되는 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 구조체로 표현되는 제안된 키보드 할당에 대한 포인터입니다.
반환 값
키를 할당할 수 있으면 TRUE, 키를 할당할 수 없는 경우 FALSE입니다. 기본 구현은 항상 TRUE를 반환합니다.
설명
파생 클래스에서 이 메서드를 재정의하여 사용자가 새 바로 가기 키를 할당할 때 추가 처리를 수행하거나 사용자가 정의할 때 바로 가기 키의 유효성을 검사합니다. 바로 가기가 할당되지 않도록 하려면 FALSE를 반환합니다. 또한 메시지 상자를 표시하거나 사용자에게 바로 가기 키가 거부된 이유를 알려야 합니다.
CMFCToolBarsCustomizeDialog::OnBeforeChangeTool
사용자가 변경 내용을 적용하려고 할 때 사용자 도구 변경 시 사용자 지정 처리를 수행합니다.
virtual void OnBeforeChangeTool(CUserTool* pSelTool);
매개 변수
pSelTool
[in, out] 바꿀 사용자 도구 개체에 대한 포인터입니다.
설명
이 메서드는 사용자 정의 도구의 속성을 변경하려고 할 때 프레임워크에서 호출됩니다. 기본 구현은 아무 작업도 수행하지 않습니다. pSelTool에서 사용하는 리소스 해제와 같이 사용자 도구 변경이 발생하기 전에 처리를 수행하려는 경우 파생된 OnBeforeChangeTool 클래스의 메서드를 재정 CMFCToolBarsCustomizeDialog 의합니다.
CMFCToolBarsCustomizeDialog::OnEditToolbarMenuImage
사용자가 도구 모음 단추 또는 메뉴 항목 아이콘을 사용자 지정할 수 있도록 이미지 편집기를 시작합니다.
virtual BOOL OnEditToolbarMenuImage(
CWnd* pWndParent,
CBitmap& bitmap,
int nBitsPerPixel);
매개 변수
pWndParent
[in] 부모 창에 대한 포인터입니다.
비트맵
[in] 편집할 비트맵 개체에 대한 참조입니다.
nBitsPerPixel
[in] 비트맵 색 해상도(픽셀당 비트)입니다.
반환 값
변경 내용이 커밋되는 경우 TRUE입니다. 그렇지 않으면 FALSE입니다. 기본 구현은 대화 상자를 표시하고 사용자가 확인을 클릭하면 TRUE를 반환하고, 사용자가 취소 또는 닫기 단추를 클릭하면 FALSE를 반환합니다.
설명
이 메서드는 사용자가 이미지 편집기를 실행할 때 프레임워크에서 호출됩니다. 기본 구현에는 CMFCImageEditorDialog 클래스 대화 상자가 표시됩니다. 사용자 지정 이미지 편집기를 사용하도록 파생 클래스에서 재정 OnEditToolbarMenuImage 의합니다.
CMFCToolBarsCustomizeDialog::OnInitDialog
속성 시트 초기화를 보강하도록 재정의합니다.
virtual BOOL OnInitDialog();
반환 값
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] 단추를 제거할 범주의 이름을 지정합니다.
반환 값
제거된 단추의 인덱스(0부터 시작하는 인덱스) 또는 지정된 명령 ID가 지정된 범주에 없는 경우 -1입니다. uiCategoryId가 -1이면 반환 값은 0입니다.
설명
모든 범주에서 단추를 제거하려면 이 메서드의 첫 번째 오버로드를 호출하고 uiCategoryId를 -1로 설정합니다.
CMFCToolBarsCustomizeDialog::RenameCategory
명령 페이지의 범주 목록 상자에 있는 범주 의 이름을 바꿉니다 .
BOOL RenameCategory(
LPCTSTR lpszCategoryOld,
LPCTSTR lpszCategoryNew);
매개 변수
lpszCategoryOld
[in] 변경할 범주 이름입니다.
lpszCategoryNew
[in] 새 범주 이름입니다.
반환 값
메서드가 성공하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
범주 이름은 고유해야 합니다.
CMFCToolBarsCustomizeDialog::ReplaceButton
명령 페이지의 명령 목록 상자에 있는 도구 모음 단추를 바꿉니다 .
void ReplaceButton(
UINT uiCmd,
const CMFCToolBarButton& button);
매개 변수
uiCmd
[in] 바꿀 단추의 명령을 지정합니다.
단추
[in] const 이전 단추를 대체하는 도구 모음 단추 개체에 대한 참조입니다.
설명
CMFCToolBarsCustomizeDialog::AddMenu, CMFCToolBarsCustomizeDialog::AddMenuCommands 또는 CMFCToolBarsCustomizeDialog::AddToolBar는 명령 페이지에 명령을 추가합니다. 이 명령은 CMFCToolBarButton 클래스AddMenuCommands입니다. 또한 프레임워크는 이러한 세 가지 메서드를 호출하여 명령을 자동으로 추가합니다. 대신 명령을 파생 형식으로 나타내려면 파생 형식의 단추를 호출 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] 범주의 이름입니다.
반환 값
메서드가 성공하면 TRUE입니다. 그렇지 않으면 FALSE입니다.
설명
사용자 범주 설정은 현재 프레임워크에서 사용되지 않습니다.