Classe CMFCColorPickerCtrl

A classe CMFCColorPickerCtrl fornece funcionalidade para um controle usado para selecionar cores.

Sintaxe

class CMFCColorPickerCtrl : public CButton

Membros

Construtores públicos

Nome Descrição
CMFCColorPickerCtrl::CMFCColorPickerCtrl Constrói um objeto CMFCColorPickerCtrl.

Métodos públicos

Nome Descrição
CMFCColorPickerCtrl::GetColor Recupera a cor selecionada pelo usuário.
CMFCColorPickerCtrl::GetHLS Recupera os valores de matiz, luminância e saturação da cor selecionada pelo usuário.
CMFCColorPickerCtrl::GetHue Recupera o componente matiz da cor selecionada pelo usuário.
CMFCColorPickerCtrl::GetLuminance Recupera o componente de luminância da cor selecionada pelo usuário.
CMFCColorPickerCtrl::GetSaturation Recupera o componente saturação da cor selecionada pelo usuário.
CMFCColorPickerCtrl::SelectCellHexagon Define a cor atual para a cor definida pelos componentes de cor RGB especificados ou o hexágono de célula especificado.
CMFCColorPickerCtrl::SetColor Define a cor atual como o valor de cor RGB especificado.
CMFCColorPickerCtrl::SetHLS Define a cor atual como o valor de cor HLS especificado.
CMFCColorPickerCtrl::SetHue Altera o componente matiz da cor selecionada no momento.
CMFCColorPickerCtrl::SetLuminance Altera o componente de luminância da cor selecionada no momento.
CMFCColorPickerCtrl::SetLuminanceBarWidth Define a largura da barra de luminância no controle seletor de cores.
CMFCColorPickerCtrl::SetOriginalColor Define a cor selecionada inicial.
CMFCColorPickerCtrl::SetPalette Define a paleta de cores atual.
CMFCColorPickerCtrl::SetSaturation Altera o componente de saturação da cor selecionada no momento.
CMFCColorPickerCtrl::SetType Define o tipo de controle de seletor de cores a ser exibido.

Métodos protegidos

Nome Descrição
CMFCColorPickerCtrl::DrawCursor Chamado pela estrutura antes que um cursor que aponte para a cor selecionada seja exibido.

Comentários

As cores padrão são selecionadas em uma paleta de cores hexagonais e as cores personalizadas são selecionadas em uma barra de luminância em que as cores são especificadas usando notação vermelha/verde/azul ou notação matiz/luminância/saturação.

A ilustração a seguir ilustra vários objetos CMFCColorPickerCtrl.

CMFCColorPickerCtrl dialog box.

O CMFCColorPickerCtrl suporta dois pares de estilos. Os estilos HEX e HEX_GREYSCALE são apropriados para seleção de cores padrão. Os estilos PICKER e LUMINANCE são apropriados para seleção de cores personalizadas.

Execute as seguintes etapas para incorporar o controle CMFCColorPickerCtrl à caixa de diálogo:

  1. Se você usar o ClassWizard, insira um novo controle de botão no modelo da caixa de diálogo (porque a classe CMFCColorPickerCtrl é herdada da classe CButton).

  2. Insira uma variável de membro associada ao novo controle de botão na classe da caixa de diálogo. Em seguida, altere o tipo de variável de CButton para CMFCColorPickerCtrl.

  3. Insira o manipulador de mensagens WM_INITDIALOG para a classe da caixa de diálogo. No manipulador, defina o tipo, a paleta e a cor inicial selecionada do controle CMFCColorPickerCtrl.

Exemplo

O exemplo a seguir demonstra como configurar um objeto CMFCColorPickerCtrl usando vários métodos na classe CMFCColorPickerCtrl. O exemplo demonstra como definir o tipo de controle do seletor e como definir sua cor, matiz, luminância e saturação. Este exemplo é parte do Exemplo de novos controles.

CMFCColorPickerCtrl m_wndLum;
// CPalette m_palSys
// set the type of the color picker control
m_wndLum.SetType(CMFCColorPickerCtrl::LUMINANCE);
m_wndLum.SetPalette(&m_palSys);
// set the color, hue, luminance and saturation of the color picker control
m_wndLum.SetColor(RGB(0, 255, 0));
m_wndLum.SetHue(0.5);
m_wndLum.SetLuminance(2.5);
m_wndLum.SetLuminanceBarWidth(10);
m_wndLum.SetSaturation(0.5);

Hierarquia de herança

CObject

CCmdTarget

CWnd

CButton

CMFCColorPickerCtrl

Requisitos

Cabeçalho: afxcolorpickerctrl.h

CMFCColorPickerCtrl::CMFCColorPickerCtrl

Constrói um objeto CMFCColorPickerCtrl.

CMFCColorPickerCtrl();

Valor de Devolução

Comentários

CMFCColorPickerCtrl::DrawCursor

Chamado pela estrutura antes que um cursor que aponte para a cor selecionada seja exibido.

virtual void DrawCursor(
    CDC* pDC,
    const CRect& rect);

Parâmetros

pDC
[in] Ponteiro para um contexto de dispositivo.

rect
[in] Especifica uma área retangular em torno da cor selecionada.

Comentários

Substitua esse método quando precisar alterar a forma do cursor que aponta para a cor selecionada.

CMFCColorPickerCtrl::GetColor

Recupera a cor selecionada pelo usuário.

COLORREF GetColor() const;

Valor de Devolução

O valor RGB da cor selecionada.

Comentários

CMFCColorPickerCtrl::GetHLS

Recupera os valores de matiz, luminância e saturação da cor selecionada pelo usuário.

void GetHLS(
    double* hue,
    double* luminance,
    double* saturation);

Parâmetros

hue
[out] Ponteiro para uma variável do tipo duplo que recebe informações de matiz.

luminance
[out] Ponteiro para uma variável do tipo duplo que recebe informações de luminância.

saturation
[out] Ponteiro para uma variável do tipo duplo que recebe informações de saturação.

Comentários

CMFCColorPickerCtrl::GetHue

Recupera o componente matiz da cor selecionada pelo usuário.

double GetHue() const;

Valor de Devolução

O componente de matiz da cor selecionada.

Comentários

CMFCColorPickerCtrl::GetLuminance

Recupera o componente de luminância da cor selecionada pelo usuário.

double GetLuminance() const;

Valor de Devolução

O componente de luminância da cor selecionada.

Comentários

CMFCColorPickerCtrl::GetSaturation

Recupera o valor de saturação da cor selecionada pelo usuário.

double GetSaturation() const;

Valor de Devolução

O componente de saturação da cor selecionada.

Comentários

CMFCColorPickerCtrl::SelectCellHexagon

Define a cor atual para a cor definida pelos componentes de cor RGB especificados ou o hexágono de célula especificado.

void SelectCellHexagon(
    BYTE R,
    BYTE G,
    BYTE B);

BOOL SelectCellHexagon(
    int x,
    int y);

Parâmetros

R
[in] O componente de cor vermelha.

G
[in] O componente de cor verde.

B
[in] O componente de cor azul.

x
[in] A coordenada x do cursor, que aponta para um hexágono de célula.

y
[in] A coordenada y do cursor, que aponta para um hexágono de célula.

Valor de Devolução

A segunda sobrecarga desse método sempre retorna FALSE.

Comentários

A primeira sobrecarga desse método define a cor atual como a cor que corresponde aos componentes de cor vermelho, verde e azul especificados pelo controle de seleção de cores.

A segunda sobrecarga desse método define a cor atual para a cor do hexágono de célula que é apontado pelo local do cursor especificado.

CMFCColorPickerCtrl::SetColor

Define a cor atual como o valor de cor RGB especificado.

void SetColor(COLORREF Color);

Parâmetros

Cor
[in] Um valor de cor RGB.

Comentários

CMFCColorPickerCtrl::SetHLS

Define a cor atual como o valor de cor HLS especificado.

void SetHLS(
    double hue,
    double luminance,
    double saturation,
    BOOL bInvalidate=TRUE);

Parâmetros

hue
[in] Um valor matiz.

luminance
[in] Um valor de luminância.

saturation
[in] Um valor de saturação.

bInvalidate
[in] TRUE para forçar a janela a ser atualizada imediatamente para a nova cor; caso contrário, FALSE. O padrão é TRUE.

Comentários

CMFCColorPickerCtrl::SetHue

Altera a matiz da cor selecionada no momento.

void SetHue(double Hue);

Parâmetros

Matiz
[in] Um valor matiz.

Comentários

CMFCColorPickerCtrl::SetLuminance

Altera a luminância da cor selecionada no momento.

void SetLuminance(double Luminance);

Parâmetros

Luminância
[in] Um valor de luminância.

Comentários

CMFCColorPickerCtrl::SetLuminanceBarWidth

Define a largura da barra de luminância no controle seletor de cores.

void SetLuminanceBarWidth(int w);

Parâmetros

w
[in] A largura da barra de luminância medida em pixels.

Comentários

Use este método para redimensionar a barra de luminância, que está na guia Personalizado do controle do seletor de cores. O parâmetro w especifica a nova largura da barra de luminância. O valor de largura será ignorado se exceder três quartos da largura da área do cliente.

CMFCColorPickerCtrl::SetOriginalColor

Define a cor selecionada inicial.

void SetOriginalColor(COLORREF ref);

Parâmetros

ref
[in] Um valor de cor RGB.

Comentários

Chame esse método quando o controle do seletor de cores for inicializado.

CMFCColorPickerCtrl::SetPalette

Define a paleta de cores atual.

void SetPalette(CPalette* pPalette);

Parâmetros

pPalette
[in] Ponteiro para uma paleta de cores.

Comentários

A paleta de cores define a matriz de cores que é apresentada no controle do seletor de cores.

CMFCColorPickerCtrl::SetSaturation

Altera a saturação da cor selecionada no momento.

void SetSaturation(double Saturation);

Parâmetros

Saturação
[in] Um valor de saturação.

Comentários

CMFCColorPickerCtrl::SetType

Define o tipo de controle de seletor de cores a ser exibido.

void SetType(COLORTYPE colorType);

Parâmetros

colorType
[in] Um tipo de controle de seletor de cor.

Os tipos são definidos pela enumeração CMFCColorPickerCtrl::COLORTYPE. Os tipos possíveis são LUMINANCE, PICKER, HEX e HEX_GREYSCALE. O tipo padrão é PICKER.

Comentários

Para especificar um tipo de controle de seletor de cores, chame esse método antes que o controle do Windows seja criado.

Confira também

Gráfico da hierarquia
Classes
Classe CMFCColorDialog