CMFCRibbonColorButton クラス
CMFCRibbonColorButton
クラスは、リボン バーに追加できるカラー ボタンを実装します。 リボンのカラー ボタンは、1 つまたは複数のカラー パレットを含むドロップダウン メニューを表示します。
構文
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 から始まるインデックス。
戻り値
解説
CMFCRibbonColorButton::EnableAutomaticButton
[自動] ボタンを有効にするかどうかを指定します。
void EnableAutomaticButton(
LPCTSTR lpszLabel,
COLORREF colorAutomatic,
BOOL bEnable=TRUE,
LPCTSTR lpszToolTip=NULL,
BOOL bOnTop=TRUE,
BOOL bDrawBorder=FALSE);
パラメーター
lpszLabel
[in] Automatic ボタンのラベル。
colorAutomatic
[in] Automatic ボタンの既定の色を指定する RGB 値。
bEnable
[in] Automatic ボタンが有効な場合は TRUE。無効になっている場合は FALSE。
lpszToolTip
[in] Automatic ボタンのツールヒント。
bOnTop
[in] Automatic ボタンがカラー パレットの前の上部にあるかどうかを指定します。
bDrawBorder
[in]TRUE の 場合、アプリケーションは、リボンの色ボタンの色バーの周りに罫線を描画します。 カラー バーには、現在選択されている色が表示されます。 アプリケーションが罫線を描画しない場合は FALSE
CMFCRibbonColorButton::EnableOtherButton
[その他] ボタンを有効にします。
void EnableOtherButton(
LPCTSTR lpszLabel,
LPCTSTR lpszToolTip=NULL);
パラメーター
lpszLabel
ボタンのラベル。
lpszToolTip
Other ボタンのツールヒント テキスト。
解説
[その他] ボタンは、色のグループの下に表示されるボタンです。 ユーザーが [その他 ] ボタンをクリックすると 色ダイアログが表示されます。
CMFCRibbonColorButton::GetAutomaticColor
現在の自動ボタンの色を取得します。
COLORREF GetAutomaticColor() const;
戻り値
現在の自動ボタンの色を表す RGB カラー値。
解説
自動ボタンの色は、CMFCRibbonColorButton::EnableAutomaticButton
メソッドに渡されるcolorAutomatic
パラメーターによって設定されます。
CMFCRibbonColorButton::GetColor
現在選ばれている色を返します。
COLORREF GetColor() const;
戻り値
ボタンをクリックして選択した色。
CMFCRibbonColorButton::GetColorBoxSize
カラー バーに表示される色要素のサイズを返します。
CSize GetColorBoxSize() const;
戻り値
ドロップダウン カラー パレット内のカラー ボタンのサイズ。
CMFCRibbonColorButton::GetColumns
リボンの色ボタンのギャラリー表示の行にある項目の数を取得します。
int GetColumns() const;
戻り値
各行のアイコンの数を返します。
解説
CMFCRibbonColorButton::GetHighlightedColor
ポップアップ カラー パレットで現在選択されている要素の色を返します。
COLORREF GetHighlightedColor() const;
戻り値
ポップアップ カラー パレットで現在選択されている要素の色。
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 メソッドを使用して、選択した色を取得します。