Compartilhar via


Classe CMFCColorBar

A classe representa uma barra de CMFCColorBar de controle de encaixe que pode selecionar cores em um documento ou em um aplicativo.

class CMFCColorBar : public CMFCPopupMenuBar

Membros

Construtores protegidos

Nome

Descrição

CMFCColorBar::CMFCColorBar

Constrói um objeto de CMFCColorBar .

Métodos públicos

Nome

Descrição

CMFCColorBar::ContextToSize

Calcula as margens verticais e horizontais que são necessárias para conter os botões do controle de barra de cor e então ajuste o local dos botões.

CMFCColorBar::CreateControl

Cria uma janela de controle de barra de cor, anexá-la ao objeto de CMFCColorBar , e redimensiona o controle para conter a paleta especificada de cores.

CMFCColorBar::Create

Cria uma janela de controle de barra de cor e anexá-la ao objeto de CMFCColorBar .

CMFCColorBar::EnableAutomaticButton

Mostra ou oculta o botão automático.

CMFCColorBar::EnableOtherButton

Habilita ou desabilita a exibição de uma caixa de diálogo que permite ao usuário selecione mais cores.

CMFCColorBar::GetColor

Recupera a cor selecionada.

CMFCColorBar::GetCommandID

Recupera a identificação de comando do controle atual da barra de cor.

CMFCColorBar::GetHighlightedColor

Recupera a cor que significa que um botão de cor tem o foco; isto é, o botão está quente.

CMFCColorBar::GetHorzMargin

Recupera a margem horizontal, que é o espaço entre a célula esquerda ou direita da cor e o limite da área cliente.

CMFCColorBar::GetVertMargin

Recupera a margem vertical, que é o espaço entre a parte superior ou célula de cor inferior e o limite da área cliente.

CMFCColorBar::IsTearOff

Indica se a barra de cor atual é encaixável.

CMFCColorBar::SetColor

Define a cor que é selecionada no momento.

CMFCColorBar::SetColorName

Define um novo nome para uma cor especificada.

CMFCColorBar::SetCommandID

Define um novo ID de comando para um controle de barra de cor.

CMFCColorBar::SetDocumentColors

Define a lista de cores que são usadas no documento atual.

CMFCColorBar::SetHorzMargin

Define a margem horizontal, que é o espaço entre a célula esquerda ou direita da cor e o limite da área cliente.

CMFCColorBar::SetVertMargin

Define a margem vertical, que é o espaço entre a parte superior ou célula de cor inferior e o limite da área cliente.

Métodos protegidos

Nome

Descrição

CMFCColorBar::AdjustLocations

Ajustar as posições dos botões de cor sobre o controle de barra de cor.

CMFCColorBar::AllowChangeTextLabels

Indica se o rótulo de texto dos botões de cor pode alterar.

CMFCColorBar::AllowShowOnList

Indica se o objeto do controle de barra de cor pode aparecer em uma lista de barra de ferramentas durante o processo de personalização.

CMFCColorBar::CalcSize

Chamado pela estrutura como parte do processo de cálculo de layout.

CMFCColorBar::CreatePalette

Initalizes uma paleta com cores em uma matriz especificada de cores.

CMFCColorBar::GetColorGridSize

Calcula o número de linhas e colunas na grade de um controle de barra de cor.

CMFCColorBar::GetExtraHeight

Calcula a altura adicional que a barra de cor atual necessário para exibir os diversos elementos de interface do usuário como o botão de Outro , documentam cores, e assim por diante.

CMFCColorBar::InitColors

Inicializa uma matriz de cores com cores em uma paleta especificada ou em paleta padrão do sistema.

CMFCColorBar::OnKey

Chamado pela estrutura quando um usuário pressiona um botão do teclado.

CMFCColorBar::OnSendCommand

Chamado pela estrutura para fechar uma hierarquia de controles pop-up.

CMFCColorBar::OnUpdateCmdUI

Chamado pela estrutura para ativar ou desativar um item da interface do usuário de um controle de barra de cor antes de item são exibidas.

CMFCColorBar::OpenColorDialog

Abrir uma caixa de diálogo de cor.

CMFCColorBar::Rebuild

Redesenho o completamente controle de barra de cor.

CMFCColorBar::SelectPalette

Defina a paleta lógica de contexto específico de dispositivo para a paleta de botão do controle pai atual da barra de cor.

CMFCColorBar::SetPropList

Define o membro de dados protegidos de m_pWndPropList ao ponteiro especificado para um controle de grade de propriedade.

CMFCColorBar::ShowCommandMessageString

Solicitar a janela do quadro que possui o controle de barra de cor para atualizar a linha de mensagem na barra de status.

Membros de dados protegidos

Nome

Descrição

m_bInternal

Um campo booleano que determina se os eventos do mouse são processados. Normalmente, os eventos do mouse são processados quando este campo é TRUE e modo de personalização é FALSE.

m_bIsEnabled

Um valor booleano que indica se um controle está habilitado.

m_bIsTearOff

Um valor booleano que indica se o controle de barra de cor suporte ao encaixe.

m_BoxSize

Um objeto de CSize que especifica o tamanho de uma célula em uma grade de barra de cor.

m_bShowDocColorsWhenDocked

Um valor booleano que indica se mostrar cores de documento enquanto a barra de cor é entrada. Para mais informações, consulte CMFCColorBar::SetDocumentColors.

m_bStdColorDlg

Um valor booleano que indica se mostrar o sistema padrão cores a caixa de diálogo ou a caixa de diálogo de CMFCColorDialog . Para mais informações, consulte CMFCColorBar::EnableOtherButton.

m_ColorAutomatic

COLORREF que armazena a cor automático atual. Para mais informações, consulte CMFCColorBar::EnableOtherButton.

m_ColorNames

Um objeto de CMap que associa um conjunto de RGB cores com seus nomes.

m_colors

CArray de valores de COLORREF que contém as cores que são exibidas no controle de barra de cor.

m_ColorSelected

Um valor de COLORREF que é a cor que o usuário tiver selecionado no momento do controle de barra de cor.

m_lstDocColors

CList de valores de COLORREF que contém as cores que são usadas no momento em um documento.

m_nCommandID

Um inteiro sem sinal que é a identificação de comando de um botão de cor.

m_nHorzMargin

Um número inteiro que será a margem horizontal entre a cor botões em uma grade de cores.

m_nHorzOffset

Um inteiro que é o deslocamento horizontal ao centro do botão de cor. Esse valor é útil se o botão exibe o texto ou uma imagem além de uma cor.

m_nNumColumns

Um inteiro que é o número de colunas em uma grade de controle de barra de cor de cores.

m_nNumColumnsVert

Um inteiro que é o número de colunas em uma grade orientada horizontalmente de cores.

m_nNumRowsHorz

Um inteiro que é o número de colunas em uma grade orientada horizontalmente de cores.

m_nRowHeight

Um inteiro que é a uma altura de uma linha de cor botões em uma grade de cores.

m_nVertMargin

Um número inteiro que será a margem vertical entre a cor botões em uma grade de cores.

m_nVertOffset

Um inteiro que é o deslocamento vertical no centro do botão de cor. Esse valor é útil se o botão exibe o texto ou uma imagem além de uma cor.

m_Palette

CPalette cores que são usadas no controle de barra de cor.

m_pParentBtn

Um ponteiro para um objeto de CMFCColorButton que é o pai do botão atual. Esse valor é útil se o botão de cor em uma hierarquia de controles de barra de ferramentas ou está em um controle de grade de propriedade de cor.

m_pParentRibbonBtn

Um ponteiro para um objeto de CMFCRibbonColorButton que está em fita e é o botão pai do botão atual. Esse valor é útil se o botão de cor em uma hierarquia de controles de barra de ferramentas ou está em um controle de grade de propriedade de cor.

m_pWndPropList

Um ponteiro para um objeto de CMFCPropertyGridCtrl .

m_strAutoColor

CString que é o texto que é exibido no botão de Automático . Para mais informações, consulte CMFCColorBar::EnableAutomaticButton.

m_strDocColors

CString que é o texto que é exibido no botão de cores do documento. Para mais informações, consulte CMFCColorBar::SetDocumentColors.

m_strOtherColor

CString que é o texto que é exibido no outro botão. Para mais informações, consulte CMFCColorBar::EnableOtherButton.

Comentários

Geralmente, você não criar um objeto de CMFCColorBar diretamente. Em vez de isso, Classe CMFCColorMenuButton (usado em menus e barras de ferramentas) ou Classe CMFCColorButton cria o objeto de CMFCColorBar .

a classe de CMFCColorBar fornece a seguinte funcionalidade:

  • Ajustar automaticamente a lista de cores do documento.

  • Salvar e restaurar seu estado, juntamente com o estado do documento.

  • Gerencia o botão “automático”.

  • Usa o controle de Classe CMFCColorPickerCtrl selecionem uma cor personalizado.

  • Suporta um estado fora de rasgo “-” (se é criada usando Classe CMFCColorMenuButton).

Para incorporar funcionalidade de CMFCColorBar em seu aplicativo:

  1. Crie um botão normal do menu e atribua uma identificação, por exemplo ID_CHAR_COLOR.

  2. Em sua classe de janela do quadro, substituir o método de CFrameWndEx::OnShowPopupMenu e substitua o botão normal do menu com um objeto de Classe CMFCColorMenuButton (chamando CMFCToolBar::ReplaceButton).

  3. Definir os estilos e habilita ou desabilita os recursos do objeto de CMFCColorBar durante a criação de Classe CMFCColorMenuButton . O objeto de CMFCColorMenuButton dinamicamente cria o objeto de CMFCColorBar depois que a estrutura chama o método de CreatePopupMenu .

Quando o usuário clica em um botão de controle de barra de cor, a estrutura usa a macro de ON_COMMAND para notificar o pai do controle de barra de cor. Em o, macro o parâmetro de identificação de comando é o valor que você atribuiu ao botão de controle de barra de cor na etapa 1 (ID_CHAR_COLOR em esse exemplo). Para obter mais informações, consulte as classes de Classe CMFCColorMenuButton, de Classe CMFCColorButton, de Classe CMFCColorPickerCtrl, de Classe CWinAppEx É, e de Classe CMFCToolBar .

Exemplo

O exemplo a seguir demonstra como configurar uma barra de cores usando vários métodos na classe de CMFCColorBar . Os métodos definem o horizontal e vertical as margens, permitem que o outro botão, crie uma janela de controle de barra de cor, e define a cor selecionada. Este exemplo é parte de novo exemplo de controles.

   CMFCColorBar m_wndColorBar;


...


    // set the margins
    m_wndColorBar.SetHorzMargin(0);
    m_wndColorBar.SetVertMargin(0);
    // enable the display of a dialog box that  
    // lets the user select more colors
    m_wndColorBar.EnableOtherButton(_T("Other..."));
    // create a color bar control window
    m_wndColorBar.CreateControl(this, rectColorBar, IDC_COLORBAR, 5 /* columns */);
    // set the currently selected color
    m_wndColorBar.SetColor(RGB(255, 0, 0));

Hierarquia de herança

CObject

   CCmdTarget

      CWnd

         CBasePane

            CPane

               CMFCBaseToolBar

                  CMFCToolBar

                     CMFCPopupMenuBar

                        CMFCColorBar

Requisitos

Cabeçalho: afxcolorbar.h

Consulte também

Referência

Gráfico da hierarquia

Outros recursos

Classes MFC