CMFCRibbonColorButton 클래스
CMFCRibbonColorButton
클래스는 리본 표시줄에 추가할 수 있는 색 단추를 구현합니다. 리본 색 단추는 하나 이상의 색상표가 포함된 드롭다운 메뉴를 표시합니다.
구문
class CMFCRibbonColorButton : public CMFCRibbonGallery
멤버
공용 생성자
속성 | 설명 |
---|---|
CMFCRibbonColorButton::CMFCRibbonColorButton |
공용 메서드
이름 | 설명 |
---|---|
CMFCRibbonColorButton::AddColorsGroup | 일반 색 영역에 색 그룹을 추가합니다. |
CMFCRibbonColorButton::EnableAutomaticButton | 자동 단추를 사용할지 여부를 지정합니다. |
CMFCRibbonColorButton::EnableOtherButton | 기타 단추를 사용하도록 설정합니다. |
CMFCRibbonColorButton::GetAutomaticColor | |
CMFCRibbonColorButton::GetColor | 현재 선택된 색을 반환합니다. |
CMFCRibbonColorButton::GetColorBoxSize | 색 막대에 표시되는 색 요소의 크기를 반환합니다. |
CMFCRibbonColorButton::GetColumns | |
CMFCRibbonColorButton::GetHighlightedColor | 팝업 색상표에서 현재 선택된 요소의 색을 반환합니다. |
CMFCRibbonColorButton::RemoveAllColorGroups | 일반 색 영역에서 모든 색 그룹을 제거합니다. |
CMFCRibbonColorButton::SetColor | 일반 색 영역에서 색을 선택합니다. |
CMFCRibbonColorButton::SetColorBoxSize | 색 막대에 표시되는 모든 색 요소의 크기를 설정합니다. |
CMFCRibbonColorButton::SetColorName | |
CMFCRibbonColorButton::SetColumns | |
CMFCRibbonColorButton::SetDocumentColors | 문서 색 영역에 표시할 RGB 값의 목록을 지정합니다. |
CMFCRibbonColorButton::SetPalette | |
CMFCRibbonColorButton::UpdateColor |
설명
리본 색 단추는 사용자가 누를 때 색 막대를 표시합니다. 기본적으로 이 색 막대에는 일반 색 영역이라는 색 선택 색상표가 포함되어 있습니다. 필요에 따라 색 막대에 기본 색을 선택할 수 있는 자동 단추와 추가 색이 포함된 팝업 색상표를 표시하는 기타 단추가 표시될 수 있습니다.
예시
다음 예제에서는 CMFCRibbonColorButton
클래스에서 다양한 메서드를 사용하는 방법을 보여 줍니다. 이 예제에서는 CMFCRibbonColorButton
개체 생성, 큰 이미지 설정, 자동 단추 사용, 기타 단추 사용, 열 수 설정, 색 막대에 표시되는 모든 색 요소의 크기 설정, 일반 색 영역에 색 그룹 추가, 문서 색 영역에 표시할 RGB 값 목록 지정 등을 수행하는 방법을 보여 줍니다. 이 코드 조각은 클라이언트 그리기 샘플의 일부입니다.
// Create the "Paper Color" button
CMFCRibbonColorButton *pBtnPaperColor = new CMFCRibbonColorButton(ID_VIEW_PAPERCOLOR, _T("Paper Color\ng"), TRUE, 13, 1);
pBtnPaperColor->SetAlwaysLargeImage();
pBtnPaperColor->EnableAutomaticButton(_T("&Automatic"), RGB(255, 255, 255));
pBtnPaperColor->EnableOtherButton(_T("&More Colors..."), _T("More Colors"));
pBtnPaperColor->SetColumns(10);
pBtnPaperColor->SetColorBoxSize(CSize(17, 17));
// CList<COLORREF,COLORREF> m_lstMainColors
pBtnPaperColor->AddColorsGroup(_T("Theme Colors"), m_lstMainColors, TRUE);
// CList<COLORREF,COLORREF> m_lstAdditionalColors
pBtnPaperColor->AddColorsGroup(_T(""), m_lstAdditionalColors, FALSE);
// CList<COLORREF,COLORREF> m_lstStandardColors
pBtnPaperColor->AddColorsGroup(_T("Standard Colors"), m_lstStandardColors, TRUE);
CList<COLORREF, COLORREF> lstColors;
lstColors.AddTail(RGB(255, 0, 0));
lstColors.AddTail(RGB(0, 255, 0));
lstColors.AddTail(RGB(0, 0, 255));
pBtnPaperColor->SetDocumentColors(_T("Document Colors"), lstColors);
상속 계층 구조
요구 사항
헤더: afxribboncolorbutton.h
CMFCRibbonColorButton::AddColorsGroup
일반 색 영역에 색 그룹을 추가합니다.
void AddColorsGroup(
LPCTSTR lpszName,
const CList<COLORREF,COLORREF>& lstColors,
BOOL bContiguousColumns=FALSE);
매개 변수
lpszName
[in] 그룹 이름입니다.
lstColors
[in] 색 목록입니다.
bContiguousColumns
[in] 색 항목이 그룹에 표시되는 방식을 제어합니다. TRUE이면 색 항목이 세로 간격 없이 그려집니다. FALSE이면 색 항목이 세로 간격으로 그려집니다.
설명
이 함수를 사용하여 색 팝업에 여러 색 그룹이 표시되도록 합니다. 색이 그룹에 표시되는 방식을 제어할 수 있습니다.
CMFCRibbonColorButton::CMFCRibbonColorButton
CMFCRibbonColorButton
개체를 생성합니다.
CMFCRibbonColorButton();
CMFCRibbonColorButton(
UINT nID,
LPCTSTR lpszText,
int nSmallImageIndex,
COLORREF color = RGB(0, 0, 0));
CMFCRibbonColorButton(
UINT nID,
LPCTSTR lpszText,
BOOL bSimpleButtonLook,
int nSmallImageIndex,
int nLargeImageIndex,
COLORREF color = RGB(0, 0, 0));
매개 변수
nID
[in] 사용자가 단추를 클릭할 때 실행할 명령의 명령 ID를 지정합니다.
lpszText
[in] 단추에 표시할 텍스트를 지정합니다.
nSmallImageIndex
[in] 단추에 표시할 작은 이미지의 인덱스(0부터 시작하는 인덱스)입니다.
color
[in] 단추의 색(기본값은 검정)입니다.
bSimpleButtonLook
[in] TRUE이면 단추가 단순 사각형으로 그려집니다.
nLargeImageIndex
[in] 단추에 표시할 큰 이미지의 인덱스(0부터 시작하는 인덱스)입니다.
Return Value
설명
CMFCRibbonColorButton::EnableAutomaticButton
자동 단추를 사용할지 여부를 지정합니다.
void EnableAutomaticButton(
LPCTSTR lpszLabel,
COLORREF colorAutomatic,
BOOL bEnable=TRUE,
LPCTSTR lpszToolTip=NULL,
BOOL bOnTop=TRUE,
BOOL bDrawBorder=FALSE);
매개 변수
lpszLabel
[in] 자동 단추의 레이블입니다.
colorAutomatic
[in] 자동 단추의 기본 색을 지정하는 RGB 값입니다.
bEnable
[in] TRUE이 면 자동 단추를 사용할 수 있습니다. 사용하지 않도록 설정된 경우 FALSE입니다.
lpszToolTip
[in] 자동 단추의 도구 설명입니다.
bOnTop
[in] 색상표 앞에 자동 단추가 맨 위에 있는지 여부를 지정합니다.
bDrawBorder
[in] TRUE이면 애플리케이션이 리본 색 단추의 색 표시줄 주위에 테두리를 그립니다. 색 표시줄은 현재 선택한 색을 표시합니다. 애플리케이션이 테두리를 그리지 않는 경우 FALSE
CMFCRibbonColorButton::EnableOtherButton
기타 단추를 사용하도록 설정합니다.
void EnableOtherButton(
LPCTSTR lpszLabel,
LPCTSTR lpszToolTip=NULL);
매개 변수
lpszLabel
단추의 레이블입니다.
lpszToolTip
기타 단추의 도구 설명 텍스트입니다.
설명
기타 단추는 색 그룹 아래에 표시되는 단추입니다. 사용자가 기타 단추를 클릭하면 색 대화 상자가 표시됩니다.
CMFCRibbonColorButton::GetAutomaticColor
현재 자동 단추 색을 검색합니다.
COLORREF GetAutomaticColor() const;
Return Value
현재 자동 단추 색을 나타내는 RGB 색 값입니다.
설명
자동 단추 색은 메서드에 colorAutomatic
전달된 매개 변수에 의해 설정됩니다 CMFCRibbonColorButton::EnableAutomaticButton
.
CMFCRibbonColorButton::GetColor
현재 선택된 색을 반환합니다.
COLORREF GetColor() const;
Return Value
단추를 클릭하여 선택한 색입니다.
CMFCRibbonColorButton::GetColorBoxSize
색 막대에 표시되는 색 요소의 크기를 반환합니다.
CSize GetColorBoxSize() const;
Return Value
드롭다운 색상표의 색 단추 크기입니다.
CMFCRibbonColorButton::GetColumns
리본 색 단추의 갤러리 표시 행에 있는 항목 수를 가져옵니다.
int GetColumns() const;
Return Value
각 행의 아이콘 수를 반환합니다.
설명
CMFCRibbonColorButton::GetHighlightedColor
팝업 색상표에서 현재 선택한 요소의 색을 반환합니다.
COLORREF GetHighlightedColor() const;
Return Value
팝업 색상표에서 현재 선택한 요소의 색입니다.
CMFCRibbonColorButton::RemoveAllColorGroups
일반 색 영역에서 모든 색 그룹을 제거합니다.
void RemoveAllColorGroups();
CMFCRibbonColorButton::SetColor
일반 색 영역에서 색을 선택합니다.
void SetColor(COLORREF color);
매개 변수
color
[in] 설정할 색입니다.
CMFCRibbonColorButton::SetColorBoxSize
색 막대에 표시되는 모든 색 요소의 크기를 설정합니다.
void SetColorBoxSize(CSize sizeBox);
매개 변수
sizeBox
[in] 색상표에 있는 색 단추의 새 크기입니다.
CMFCRibbonColorButton::SetColorName
지정된 색의 새 이름을 설정합니다.
static void __stdcall SetColorName(
COLORREF color,
const CString& strName);
매개 변수
color
[in] 색의 RGB 값입니다.
strName
[in] 지정한 색의 새 이름입니다.
설명
호출 CMFCColorBar::SetColorName
하기 때문에 이 메서드는 애플리케이션의 모든 CMFCColorBar
개체에서 지정된 색의 이름을 변경합니다.
CMFCRibbonColorButton::SetColumns
사용자의 색 선택 프로세스 중에 사용자에게 표시되는 색 표에 표시되는 열 수를 설정합니다.
void SetColumns(int nColumns);
매개 변수
nColumns
[in] 각 행에 표시할 색 아이콘의 수입니다.
설명
CMFCRibbonColorButton::SetDocumentColors
문서 색 영역에 표시할 RGB 값의 목록을 지정합니다.
void SetDocumentColors(
LPCTSTR lpszLabel,
CList<COLORREF,COLORREF>& lstColors);
매개 변수
lpszLabel
[in] 문서 색으로 표시할 텍스트입니다.
lstColors
[in] RGB 값 목록에 대한 참조입니다.
CMFCRibbonColorButton::SetPalette
색 단추가 표시하는 색 표에 표시할 표준 색을 지정합니다.
void SetPalette(CPalette* pPalette);
매개 변수
pPalette
[in] 색상표에 대한 포인터입니다.
설명
CMFCRibbonColorButton::UpdateColor
사용자가 색 단추를 클릭할 때 표시되는 색 테이블에서 색을 선택할 때 프레임워크에서 호출됩니다.
void UpdateColor(COLORREF color);
매개 변수
color
[in] 사용자가 선택한 색입니다.
설명
이 메서드는 CMFCRibbonColorButton::UpdateColor
현재 선택한 단추의 색을 변경하고 BN_CLICKED 표준 알림과 함께 WM_COMMAND 메시지를 보내 부모에 알립니다. CMFCRibbonColorButton::GetColor 메서드를 사용하여 선택한 색을 검색합니다.