Compartilhar via


Classe CMFCColorBar

The CMFCColorBar classe representa uma BAR de controle de encaixe pode selecionar cores em um documento ou aplicativo.

class CMFCColorBar : public CMFCPopupMenuBar

Membros

Construtores protegidos

Nome

Descrição

CMFCColorBar::CMFCColorBar

Constrói um CMFCColorBar objeto.

Métodos públicos

Nome

Descrição

CMFCColorBar::ContextToSize

Calcula as margens verticais e horizontais que são necessárias para conter botões no controle de BAR de cores e, em seguida, ajusta a localização desses botões.

CMFCColorBar::CreateControl

Cria uma janela de controle de BAR de cores, anexa o CMFCColorBar objeto e redimensiona o controle para conter a paleta de cores especificada.

CMFCColorBar::criar

Cria uma janela de controle de BAR de cores e a anexa o CMFCColorBar objeto.

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 selecionar mais cores.

CMFCColorBar::GetColor

Recupera a cor selecionada atualmente.

CMFCColorBar::GetCommandID

Recupera a ID de comando do controle de BAR de cores corrente.

CMFCColorBar::GetHighlightedColor

Recupera a cor que significa que um botão de cor tem o foco; que é, o botão é hot.

CMFCColorBar::GetHorzMargin

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

CMFCColorBar::GetVertMargin

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

CMFCColorBar::IsTearOff

Indica se a BAR de cores corrente é acoplável.

CMFCColorBar::SetColor

Define a cor 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 BAR de cores.

CMFCColorBar::SetDocumentColors

Define a lista de cores usadas no documento corrente.

CMFCColorBar::SetHorzMargin

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

CMFCColorBar::SetVertMargin

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

Métodos protegidos

Nome

Descrição

CMFCColorBar::AdjustLocations

Ajusta as posições dos botões de cor no controle de BAR de cores.

CMFCColorBar::AllowChangeTextLabels

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

CMFCColorBar::AllowShowOnList

Indica se o objeto de controle de BAR de cores pode aparecer em uma BAR de ferramentas lista durante o processo de personalização.

CMFCColorBar::CalcSize

Chamado pela estrutura sistema autônomo parte do processo de cálculo de layout.

CMFCColorBar::CreatePalette

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

CMFCColorBar::GetColorGridSize

Calcula o número de linhas e colunas na grade de um controle de BAR de cores.

CMFCColorBar::GetExtraHeight

Calcula a altura adicional necessários para exibir elementos de interface do usuário diversos, sistema autônomo a BAR de cores correnteOutros botão, sistema autônomo cores do documento e assim por diante.

CMFCColorBar::InitColors

Inicializa uma matriz de cores com as cores em uma paleta especificada ou a 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 desabilitar um item de interface do usuário de um controle de BAR de cores antes que o item seja exibido.

CMFCColorBar::OpenColorDialog

Abre uma caixa de diálogo de cor.

CMFCColorBar::recompilar

Redesenha completamente o controle de BAR de cores.

CMFCColorBar::SelectPalette

Define a paleta lógica do contexto de dispositivo especificado para a paleta do botão pai do controle de BAR de cores corrente.

CMFCColorBar::SetPropList

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

CMFCColorBar::ShowCommandMessageString

Solicita a janela do quadro que possui o controle de BAR de cores para atualizar a linha de mensagem na BAR de status.

Membros de dados protegido

Nome

Descrição

m_bInternal

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

m_bIsEnabled

Um booliano que indica se um controle está habilitado.

m_bIsTearOff

Um valor booliano que indica se o controle de BAR de cores oferece suporte de encaixe.

m_BoxSize

A CSize objeto que especifica o dimensionar de uma célula em uma grade na BAR de cores.

m_bShowDocColorsWhenDocked

Um valor booliano que indica se deve mostrar as cores do documento quando a BAR de cores está encaixada.Para obter mais informações, consulte CMFCColorBar::SetDocumentColors.

m_bStdColorDlg

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

m_ColorAutomatic

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

m_ColorNames

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

m_colors

A CArray of COLORREF valores que contém as cores são exibidas no controle na BAR de cores.

m_ColorSelected

A COLORREFvalor de que é a cor que o usuário tiver selecionado no momento do controle de BAR de cores.

m_lstDocColors

A CList of COLORREF valores que contém as cores usadas no momento em um documento.

m_nCommandID

Um inteiro sem sinal é a ID de comando de um botão de cor.

m_nHorzMargin

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

m_nHorzOffset

Um número inteiro que é o deslocamento horizontal ao centralizar do botão cor.Esse valor é significativo se o botão exibe texto ou uma imagem com uma cor.

m_nNumColumns

Um número inteiro que indica o número de colunas em uma grade de controle de BAR de cores de cores.

m_nNumColumnsVert

Um número inteiro que indica o número de colunas em uma grade de cores orientada verticalmente.

m_nNumRowsHorz

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

m_nRowHeight

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

m_nVertMargin

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

m_nVertOffset

Um número inteiro que é o deslocamento vertical ao centralizar do botão cor.Esse valor é significativo se o botão exibe texto ou uma imagem com uma cor.

m_Palette

A CPalette as cores que são usadas no controle de BAR de cores.

m_pParentBtn

Um ponteiro para um CMFCColorButton objeto que é o pai do botão corrente.Esse valor é significativo se no botão cor está em uma hierarquia de controles da barra de ferramentas ou se estiver em um controle de grade de propriedade de cor.

m_pParentRibbonBtn

Um ponteiro para um CMFCRibbonColorButtonobjeto de na faixa de opções e é o botão do pai do botão corrente.Esse valor é significativo se no botão cor está em uma hierarquia de controles da barra de ferramentas ou se estiver em um controle de grade de propriedade de cor.

m_pWndPropList

Um ponteiro para um CMFCPropertyGridCtrl objeto.

m_strAutoColor

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

m_strDocColors

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

m_strOtherColor

A CString que é o texto que é exibido sobre o outros botão.Para obter mais informações, consulte CMFCColorBar::EnableOtherButton.

Comentários

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

The CMFCColorBar classe fornece a seguinte funcionalidade:

  • Ajusta automaticamente a lista de cores do documento.

  • Salva e restaura o estado, juntamente com o estado do documento.

  • Gerencia o botão "automático".

  • Usa o Classe CMFCColorPickerCtrl controle para selecionar uma cor personalizada.

  • Oferece suporte a um estado "destacável" (se ele é criado usando oClasse CMFCColorMenuButton).

Para incorporar o CMFCColorBar funcionalidade em seu aplicativo:

  1. Criar um botão de menu regulares e atribua a ela uma ID, por exemplo ID_CHAR_COLOR.

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

  3. conjunto todos os estilos e ativar ou desabilitar os recursos do CMFCColorBar objeto durante Classe CMFCColorMenuButton criação. The CMFCColorMenuButton objeto cria dinamicamente o CMFCColorBar objeto após as chamadas de estrutura de CreatePopupMenu método.

Quando o usuário clica em um botão de controle da BAR de cores, a estrutura usa o ON_COMMAND macro para notificar o pai do controle na BAR de cores. Na macro, o parâmetro de ID de comando é o valor que você atribuiu ao botão de controle de BAR de cores na etapa 1 (ID_CHAR_COLOR neste exemplo).Para obter mais informações, consulte o Classe CMFCColorMenuButton, Classe CMFCColorButton, Classe CMFCColorPickerCtrl, Classe CFrameWndEx, e Classe CMFCToolBar classes.

Exemplo

O exemplo a seguir demonstra como configurar uma BAR de cores usando vários métodos no CMFCColorBar classe. Os métodos de conjunto as margens horizontais e verticais, habilitar o Outros botão, criar uma janela de controle de BAR de cores e define a cor selecionada atualmente.Este exemplo faz parte o Exemplo do NewControls: Aplicativo de demonstração de controles MFC.

   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

Conceitos

Gráfico de hierarquia do MFC