CMFCColorButton 和 CMFCColorBar Class 选件类一起用来实现颜色选取器控件。
class CMFCColorButton : public CMFCButton
成员
公共构造函数
名称 |
说明 |
---|---|
构造新的 CMFCColorButton 对象。 |
公共方法
名称 |
说明 |
---|---|
启用和禁用常规的颜色按钮上确定“auto”按钮。 (标准系统自动按钮被标记 自动。) |
|
启用和禁用常规的颜色按钮下方的“其他”按钮。 (标准系统“other”按钮被标记 更多颜色…。) |
|
检索当前自动颜色。 |
|
检索按钮的颜色。 |
|
设置按钮的颜色。 |
|
设置颜色名称。 |
|
设置列数在颜色选取器对话框中。 |
|
指定在颜色选取器对话框中显示文档特定颜色的列表。 |
|
指定条件显示颜色调色板。 |
|
基于其文本和图像大小更改按钮控件的大小。 |
受保护的方法
名称 |
说明 |
---|---|
指示当前颜色按钮是否在Windows XP视觉样式显示。 |
|
调用由结构显示按钮的图像。 |
|
调用由结构显示按钮的边框。 |
|
调用由结构显示焦点矩形,当按钮具有焦点。 |
|
调用由结构,当颜色选取器将显示对话框。 |
|
初始化 m_pPalette 保护的数据成员添加到指定的调色板或默认系统调色板。 |
|
调用由结构,当用户选择一种颜色从颜色选择器对话框的调色板。 |
数据成员
名称 |
说明 |
---|---|
m_bAltColorDlg |
一个布尔值。 如果 TRUE,框架显示 CMFCColorDialog 颜色对话框,而 另一个 按钮单击,或者,如果 FALSE,系统颜色对话框。 默认值为 TRUE。 有关更多信息,请参见 CMFCColorButton::EnableOtherButton。 |
m_bAutoSetFocus |
一个布尔值。 如果 TRUE,框架将颜色菜单上,当菜单显示,或者,如果 FALSE,不更改焦点。 默认值为 TRUE。 |
指示自定义模式是否为颜色按钮启动。 |
|
m_Color |
COLORREF 值。 包含当前选定的颜色。 |
m_ColorAutomatic |
COLORREF 值。 包含当前选定的默认颜色。 |
m_Colors |
|
m_lstDocColors |
|
m_nColumns |
一个 Integer。 在颜色网格包含列数显示在颜色选择菜单上的。 |
m_pPalette |
为 CPalette的指针。 包含可在当前颜色选择菜单的颜色。 |
m_pPopup |
为 CMFCColorPopupMenu Class 对象的指针。 显示的颜色选择菜单,当您单击按钮颜色。 |
m_strAutoColorText |
一个字符串。 “auto”按钮的标签在颜色选择菜单上的。 |
m_strDocColorsText |
一个字符串。 按钮的标签中显示文档的颜色选择菜单的颜色。 |
m_strOtherText |
一个字符串。 “另一个”按钮的标签在颜色选择菜单上的。 |
备注
默认情况下,CMFCColorButton 选件类的行为就如同打开颜色选择器对话框的普通按钮。 颜色选择器对话框包含演示自定义颜色选取器的数组小的颜色按钮和“other”按钮。 (标准系统“other”按钮被标记 更多颜色…。)当用户选择一个新的颜色时,CMFCColorButton 对象反映更改并显示选定的颜色。
使用 类向导 工具和对话框模板,创建颜色按钮控件直接在代码中,或。 如果直接创建颜色按钮控件中,添加一个 CMFCColorButton 变量到您的应用程序,然后调用 CMFCColorButton 对象的构造函数和 Create 方法。 如果使用 类向导,添加一个 CButton 变量到您的应用程序,从 CButton 然后将变量的类型。CMFCColorButton。
颜色选择器对话框(CMFCColorBar Class)。CMFCColorButton::OnShowColorPopup 方法显示,当框架调用 OnLButtonDown 事件处理程序时。 CMFCColorButton::OnShowColorPopup 可以重写方法以支持自定义颜色选择。
CMFCColorButton 对象通知其父颜色通过将其发送 WM_COMMAND | BN_CLICKED 通知更改。 父使用 CMFCColorButton::GetColor 方法检索当前颜色。
示例
通过在 CMFCColorButton 选件类,中的各种方法下面的示例演示如何配置颜色按钮。 方法设置颜色按钮及其列数的颜色,从而自动和其他按钮。 此示例是 状态栏演示示例的一部分。
CMFCColorButton m_wndTextColor;
...
m_wndTextColor.EnableAutomaticButton (_T("Default"), afxGlobalData.clrBtnText);
m_wndTextColor.EnableOtherButton (_T("Other..."));
m_wndTextColor.SetColor ((COLORREF)-1);
m_wndTextColor.SetColorName((COLORREF)-1, "Default Color");
m_wndTextColor.SetColumnsNumber(3);
要求
标头: afxcolorbutton.h
请参见
参考
CMFCColorButton::OnShowColorPopup