Classe CMFCToolBarEditBoxButton
Um botão de barra de ferramentas que contém um controle de edição (Classe CEdit).
Sintaxe
class CMFCToolBarEditBoxButton : public CMFCToolBarButton
Membros
Construtores públicos
Nome | Descrição |
---|---|
CMFCToolBarEditBoxButton::CMFCToolBarEditBoxButton | Constrói um objeto CMFCToolBarEditBoxButton . |
CMFCToolBarEditBoxButton::~CMFCToolBarEditBoxButton |
Destruidor. |
Métodos públicos
Nome | Descrição |
---|---|
CMFCToolBarEditBoxButton::CanBeStretched | Especifica se um usuário pode alongar o botão durante a personalização. (Substitui CMFCToolBarButton::CanBeStretched.) |
CMFCToolBarEditBoxButton::CopyFrom | Copia as propriedades de outro botão de barra de ferramentas para o botão atual. (Substitui CMFCToolBarButton::CopyFrom.) |
CMFCToolBarEditBoxButton:: CMFCToolBarEditBoxButton::CreateEdit |
Cria um controle de edição no botão. |
CMFCToolBarEditBoxButton::CreateObject |
Usado pela estrutura para criar uma instância dinâmica desse tipo de classe. |
CMFCToolBarEditBoxButton::GetByCmd | Recupera o primeiro objeto CMFCToolBarEditBoxButton no aplicativo que tem a ID de comando especificada. |
CMFCToolBarEditBoxButton::GetContentsAll | Recupera o texto do primeiro controle de barra de ferramentas de caixa de edição que tem a ID de comando especificada. |
CMFCToolBarEditBoxButton::GetContextMenuID | Recupera a ID do recurso do menu de atalho associado ao botão. |
CMFCToolBarEditBoxButton::GetEditBorder | Recupera o retângulo delimitador da parte de edição do botão de caixa de edição. |
CMFCToolBarEditBoxButton:: CMFCToolBarEditBoxButton::GetEditBox |
Retorna um ponteiro para o controle de edição inserido no botão. |
CMFCToolBarEditBoxButton::GetHwnd | Recupera o identificador de janela associado ao botão de barra de ferramentas. (Substitui CMFCToolBarButton::GetHwnd.) |
CMFCToolBarEditBoxButton::GetInvalidateRect | Recupera a região da área de cliente do botão que deve ser redesenhada. (Substitui CMFCToolBarButton::GetInvalidateRect.) |
CMFCToolBarEditBoxButton::GetThisClass |
Usado pela estrutura para obter um ponteiro para o objeto CRuntimeClass associado a esse tipo de classe. |
CMFCToolBarEditBoxButton::HaveHotBorder | Determina se uma borda do botão é exibida quando um usuário clica no botão. (Substitui CMFCToolBarButton::HaveHotBorder.) |
CMFCToolBarEditBoxButton::IsFlatMode | Determina se os botões de caixa de edição têm um estilo simples. |
CMFCToolBarEditBoxButton::NotifyCommand | Especifica se o botão processa a mensagem WM_COMMAND. (Substitui CMFCToolBarButton::NotifyCommand.) |
CMFCToolBarEditBoxButton::OnAddToCustomizePage | Chamado pela estrutura quando o botão é adicionado a uma caixa de diálogo Personalizar. (Substitui CMFCToolBarButton::OnAddToCustomizePage.) |
CMFCToolBarEditBoxButton::OnCalculateSize |
Chamado pela estrutura para calcular o tamanho do botão para o contexto do dispositivo e o estado de encaixe especificados. (Substitui CMFCToolBarButton::OnCalculateSize.) |
CMFCToolBarEditBoxButton::OnChangeParentWnd | Chamado pela estrutura quando o botão é inserido em uma nova barra de ferramentas. (Substitui CMFCToolBarButton::OnChangeParentWnd.) |
CMFCToolBarEditBoxButton::OnClick | Chamado pela estrutura quando o usuário clica no botão do mouse. (Substitui CMFCToolBarButton::OnClick.) |
CMFCToolBarEditBoxButton::OnCtlColor | Chamado pela estrutura quando a barra de ferramentas pai manipula uma mensagem WM_CTLCOLOR. (Substitui CMFCToolBarButton::OnCtlColor.) |
CMFCToolBarEditBoxButton::OnDraw |
Chamado pela estrutura para desenhar o botão usando os estilos e as opções especificados. (Substitui CMFCToolBarButton::OnDraw.) |
CMFCToolBarEditBoxButton::OnDrawOnCustomizeList |
Chamado pela estrutura para desenhar o botão no painel Comandos da caixa de diálogo Personalizar. (Substitui CMFCToolBarButton::OnDrawOnCustomizeList.) |
CMFCToolBarEditBoxButton::OnGlobalFontsChanged | Chamado pela estrutura quando a fonte global foi alterada. (Substitui CMFCToolBarButton::OnGlobalFontsChanged.) |
CMFCToolBarEditBoxButton::OnMove | Chamado pela estrutura quando a barra de ferramentas pai se move. (Substitui CMFCToolBarButton::OnMove.) |
CMFCToolBarEditBoxButton::OnShow | Chamado pela estrutura quando o botão se torna visível ou invisível. (Substitui CMFCToolBarButton::OnShow.) |
CMFCToolBarEditBoxButton::OnSize | Chamado pela estrutura quando a barra de ferramentas pai muda de tamanho ou posição e essa alteração faz com que o botão mude de tamanho. (Substitui CMFCToolBarButton::OnSize.) |
CMFCToolBarEditBoxButton::OnUpdateToolTip | Chamado pela estrutura quando a barra de ferramentas pai atualiza o texto da dica de ferramenta. (Substitui CMFCToolBarButton::OnUpdateToolTip.) |
CMFCToolBarEditBoxButton::Serialize |
Lê esse objeto de um arquivo morto ou grava-o em um arquivo morto. (Substitui CMFCToolBarButton::Serialize.) |
CMFCToolBarEditBoxButton::SetACCData |
Preenche o objeto CAccessibilityData fornecido com os dados de acessibilidade do botão de barra de ferramentas. (Substitui CMFCToolBarButton::SetACCData.) |
CMFCToolBarEditBoxButton:: CMFCToolBarEditBoxButton::SetContents |
Define o texto no controle de edição do botão. |
CMFCToolBarEditBoxButton:: CMFCToolBarEditBoxButton::SetContentsAll |
Localiza o botão de controle de edição que tem uma ID de comando especificada e define o texto no controle de edição desse botão. |
CMFCToolBarEditBoxButton::SetContextMenuID | Especifica a ID do recurso do menu de atalho associado ao botão. |
CMFCToolBarEditBoxButton::SetFlatMode | Especifica a aparência de estilo simples dos botões de caixa de edição no aplicativo. |
CMFCToolBarEditBoxButton:: CMFCToolBarEditBoxButton::SetStyle |
Especifica o estilo do botão. (Substitui CMFCToolBarButton::SetStyle.) |
Comentários
Para adicionar um botão de caixa de edição a uma barra de ferramentas, siga estas etapas:
Reserve uma ID do recurso fictícia para o botão no recurso da barra de ferramentas pai.
Construir um objeto
CMFCToolBarEditBoxButton
.No manipulador de mensagens que processa a mensagem AFX_WM_RESETTOOLBAR, substitua o botão fictício pelo novo botão de caixa de combinação usando CMFCToolBar::ReplaceButton.
Para saber mais, confira Passo a passo: colocando controles em barras de ferramentas.
Exemplo
O exemplo a seguir demonstra como usar vários métodos na classe CMFCToolBarEditBoxButton
. O exemplo mostra como especificar que um usuário pode alongar o botão durante a personalização, especificar que uma borda do botão é exibida quando um usuário clica no botão, definir o texto no controle de caixa de texto, especificar a aparência de estilo simples dos botões de caixa de edição no aplicativo e especificar o estilo de um controle de caixa de edição da barra de ferramentas.
CMFCToolBarEditBoxButton *boxButton = new CMFCToolBarEditBoxButton();
boxButton->CanBeStretched();
boxButton->HaveHotBorder();
boxButton->SetContents(_T("edit box button"));
boxButton->SetFlatMode(true);
boxButton->SetStyle(TBBS_PRESSED);
Hierarquia de herança
CMFCToolBarEditBoxButton
Requisitos
Cabeçalho: afxtoolbareditboxbutton.h
CMFCToolBarEditBoxButton::CanBeStretched
Especifica se um usuário pode alongar o botão durante a personalização.
virtual BOOL CanBeStretched() const;
Valor de retorno
Esse método retorna TRUE.
Comentários
Por padrão, a estrutura não permite que o usuário alongue um botão de barra de ferramentas durante a personalização. Esse método estende a implementação da classe base (CMFCToolBarButton::CanBeStretched), permitindo que o usuário alongue um botão de barra de ferramentas de caixa de edição durante a personalização.
CMFCToolBarEditBoxButton::CMFCToolBarEditBoxButton
Constrói um objeto CMFCToolBarEditBoxButton.
CMFCToolBarEditBoxButton(
UINT uiID,
int iImage,
DWORD dwStyle=ES_AUTOHSCROLL,
int iWidth=0);
Parâmetros
uiID
[in] Especifica a ID do controle.
iImage
[in] Especifica o índice baseado em zero de uma imagem da barra de ferramentas. A imagem está localizada no objeto Classe CMFCToolBarImages que a classe CMFCToolBar mantém.
dwStyle
[in] Especifica o estilo de controle de edição.
iWidth
[in] Especifica a largura em pixels do controle de edição.
Comentários
O construtor padrão define o estilo de controle de edição para a seguinte combinação:
WS_CHILD | WS_VISIBLE | ES_AUTOHSCROLL
A largura padrão do controle é de 150 pixels.
CMFCToolBarEditBoxButton::CopyFrom
Copia as propriedades de outro botão de barra de ferramentas para o botão atual.
virtual void CopyFrom(const CMFCToolBarButton& src);
Parâmetros
src
[in] Uma referência ao botão de origem do qual copiar.
Comentários
Chame esse método para copiar outro botão de barra de ferramentas para este botão de barra de ferramentas. src deve ser do tipo CMFCToolBarEditBoxButton
.
CMFCToolBarEditBoxButton::CreateEdit
Cria um controle de edição no botão.
virtual CEdit* CreateEdit(
CWnd* pWndParent,
const CRect& rect);
Parâmetros
pWndParent
[in] Especifica a janela pai do controle de edição. Não pode ser NULL.
rect
[in] Especifica o tamanho e a posição do controle de edição.
Valor de retorno
Um ponteiro para o controle de edição que acaba de ser criado; ele será NULL se a criação e o anexo do controle falharem.
Comentários
Um objeto CMFCToolBarEditBoxButton
é construído em duas etapas. Primeiro chame o construtor, então chame CreateEdit
, o que cria o controle de edição do Windows e o anexa ao objeto CMFCToolBarEditBoxButton
.
CMFCToolBarEditBoxButton::GetByCmd
Recupera o primeiro objeto CMFCToolBarEditBoxButton
no aplicativo que tem a ID de comando especificada.
static CMFCToolBarEditBoxButton* __stdcall GetByCmd(UINT uiCmd);
Parâmetros
uiCmd
[in] A ID de comando do botão a ser recuperado.
Valor de retorno
O primeiro objeto CMFCToolBarEditBoxButton
no aplicativo que tem a ID de comando especificada ou NULL se nenhum objeto desse tipo existir.
Comentários
Esse método utilitário compartilhado é usado por métodos como CMFCToolBarEditBoxButton::SetContentsAll e CMFCToolBarEditBoxButton::GetContentsAll para definir ou obter o texto do primeiro controle de barra de ferramentas de caixa de edição que tem a ID de comando especificada.
CMFCToolBarEditBoxButton::GetContentsAll
Recupera o texto do primeiro controle de barra de ferramentas de caixa de edição que tem a ID de comando especificada.
static CString __stdcall GetContentsAll(UINT uiCmd);
Parâmetros
uiCmd
[in] A ID de comando do botão do qual recuperar conteúdo.
Valor de retorno
Um objeto CString
que contém o texto do primeiro controle de barra de ferramentas da caixa de edição que tem a ID de comando especificada.
Comentários
Esse método retornará a cadeia de caracteres vazia se nenhum objeto CMFCToolBarEditBoxButton
tiver a ID de comando especificada.
CMFCToolBarEditBoxButton::GetContextMenuID
Recupera a ID do recurso do menu de atalho associado ao botão.
UINT GetContextMenuID();
Valor de retorno
A ID do recurso do menu de atalho associado ao botão ou 0 se o botão não tiver nenhum menu de atalho associado.
Comentários
A estrutura usa a ID do recurso para criar o menu de atalho quando o usuário clica com o botão direito do mouse no botão.
CMFCToolBarEditBoxButton::GetEditBorder
Recupera o retângulo delimitador da parte de edição do botão de caixa de edição.
virtual void GetEditBorder(CRect& rectBorder);
Parâmetros
rectBorder
[out] Uma referência ao objeto CRect
que recebe o retângulo delimitador.
Comentários
Esse método recupera o retângulo delimitador do controle de edição nas coordenadas do cliente. Ele expande o tamanho do retângulo em cada direção em um pixel.
O método CMFCVisualManager::OnDrawEditBorder chama esse método quando desenha a borda em torno de um objeto CMFCToolBarEditBoxButton
.
CMFCToolBarEditBoxButton::GetEditBox
Retorna um ponteiro para o controle Classe CEdit inserido no botão.
CEdit* GetEditBox() const;
Valor de retorno
Um ponteiro para o controle Classe CEdit que o botão contém. Ele será NULL se o controle CEdit
ainda não tiver sido criado.
Comentários
Crie o controle CEdit
chamando CMFCToolBarEditBoxButton::CreateEdit.
CMFCToolBarEditBoxButton::GetHwnd
Recupera o identificador de janela associado ao botão de barra de ferramentas.
virtual HWND GetHwnd();
Valor de retorno
O identificador de janela associado ao botão.
Comentários
Esse método substitui o método CMFCToolBarButton::GetHwnd retornando o identificador da janela da parte de controle de edição do botão de caixa de edição.
CMFCToolBarEditBoxButton::GetInvalidateRect
Recupera a região da área de cliente do botão que deve ser redesenhada.
virtual const CRect GetInvalidateRect() const;
Valor de retorno
Um objeto CRect
que especifica a região que deve ser redesenhada.
Comentários
Esse método estende a implementação da classe base, CMFCToolBarButton::GetInvalidateRect, incluindo na região a área do rótulo de texto.
CMFCToolBarEditBoxButton::HaveHotBorder
Determina se uma borda do botão é exibida quando um usuário clica no botão.
virtual BOOL HaveHotBorder() const;
Valor de retorno
Um valor diferente de zero, se um botão exibir a borda quando selecionado. Caso contrário, 0.
Comentários
Esse método estende a implementação da classe base, CMFCToolBarButton::HaveHotBorder, retornando um valor diferente de zero se o controle está visível.
CMFCToolBarEditBoxButton::IsFlatMode
Determina se os botões de caixa de edição têm um estilo simples.
static BOOL __stdcall IsFlatMode();
Valor de retorno
Diferente de zero se os botões tiverem um estilo simples; caso contrário, 0.
Comentários
Por padrão, os botões de caixa de edição têm um estilo simples. Use o método CMFCToolBarEditBoxButton::SetFlatMode para alterar a aparência de estilo simples para seu aplicativo.
CMFCToolBarEditBoxButton::NotifyCommand
Especifica se o botão processa a mensagem WM_COMMAND.
virtual BOOL NotifyCommand(int iNotifyCode);
Parâmetros
iNotifyCode
[in] A mensagem de notificação associada ao comando.
Valor de retorno
TRUE se o botão processar a mensagem WM_COMMAND ou FALSE para indicar que a mensagem deve ser manipulada pela barra de ferramentas pai.
Comentários
A estrutura chama esse método quando está prestes a enviar uma mensagem WM_COMMAND para a janela pai.
Esse método estende a implementação da classe base (CMFCToolBarButton::NotifyCommand) processando a notificação EN_UPDATE. Para cada caixa de edição com a mesma ID de comando que este objeto, define o rótulo de texto como o rótulo de texto desse objeto.
CMFCToolBarEditBoxButton::OnAddToCustomizePage
Chamado pela estrutura quando o botão é adicionado a uma caixa de diálogo Personalizar.
virtual void OnAddToCustomizePage();
Comentários
Esse método estende a implementação da classe base (CMFCToolBarButton::OnAddToCustomizePage) copiando as propriedades do controle de caixa de edição em qualquer barra de ferramentas que tenha a mesma ID de comando que este objeto. Esse método não fará nada se nenhuma barra de ferramentas tiver um controle de caixa de edição que tenha a mesma ID de comando que este objeto.
Para mais informações sobre a caixa de diálogo Personalizar, confira Classe CMFCToolBarsCustomizeDialog.
CMFCToolBarEditBoxButton::OnChangeParentWnd
Chamado pela estrutura quando o botão é inserido em uma nova barra de ferramentas.
virtual void OnChangeParentWnd(CWnd* pWndParent);
Parâmetros
pWndParent
[in] Um ponteiro para a nova janela pai.
Comentários
Esse método substitui a implementação da classe base (CMFCToolBarButton::OnChangeParentWnd) recriando o objeto CEdit
interno.
CMFCToolBarEditBoxButton::OnClick
Chamado pela estrutura quando o usuário clica no botão do mouse.
virtual BOOL OnClick(
CWnd* pWnd,
BOOL bDelay = TRUE);
Parâmetros
pWnd
[in] Não é usado.
bDelay
[in] Não é usado.
Valor de retorno
Um valor diferente de zero, se o botão processar a mensagem de clique. Caso contrário, 0.
Comentários
Esse método substitui a implementação da classe base (CMFCToolBarButton::OnClick) retornando um valor diferente de zero se o objeto CEdit
interno está visível.
CMFCToolBarEditBoxButton::OnCtlColor
Chamado pela estrutura quando a barra de ferramentas pai manipula uma mensagem WM_CTLCOLOR.
virtual HBRUSH OnCtlColor(
CDC* pDC,
UINT nCtlColor);
Parâmetros
pDC
[in] O contexto do dispositivo que exibe o botão.
nCtlColor
[in] Não é usado.
Valor de retorno
Um identificador para o pincel de janela global.
Comentários
Esse método substitui a implementação da classe base (CMFCToolBarButton::OnCtlColor) definindo as cores de texto e tela de fundo do contexto do dispositivo fornecido para as cores globais de texto e tela de fundo, respectivamente.
Para mais informações sobre opções globais disponíveis para seu aplicativo, confira Estrutura AFX_GLOBAL_DATA.
CMFCToolBarEditBoxButton::OnGlobalFontsChanged
Chamado pela estrutura quando a fonte global foi alterada.
virtual void OnGlobalFontsChanged();
Comentários
Esse método estende a implementação da classe base (CMFCToolBarButton::OnGlobalFontsChanged) alterando a fonte do controle para aquela da fonte global.
Para mais informações sobre opções globais disponíveis para seu aplicativo, confira Estrutura AFX_GLOBAL_DATA.
CMFCToolBarEditBoxButton::OnMove
Chamado pela estrutura quando a barra de ferramentas pai se move.
virtual void OnMove();
Comentários
Esse método substitui a implementação de classe padrão (CMFCToolBarButton::OnMove) atualizando a posição do objeto CEdit
interno
CMFCToolBarEditBoxButton::OnShow
Chamado pela estrutura quando o botão se torna visível ou invisível.
virtual void OnShow(BOOL bShow);
Parâmetros
bShow
[in] Especifica se o botão está visível. Se esse parâmetro for TRUE, o botão ficará visível. Caso contrário, o botão não ficará visível.
Comentários
Esse método estende a implementação da classe base (CMFCToolBarButton::OnShow) exibindo o botão se bShow é TRUE. Caso contrário, esse método oculta o botão.
CMFCToolBarEditBoxButton::OnSize
Chamado pela estrutura quando a barra de ferramentas pai muda de tamanho ou posição e essa alteração faz com que o botão mude de tamanho.
virtual void OnSize(int iSize);
Parâmetros
iSize
[in] A nova largura do botão, em pixels.
Comentários
Esse método substitui a implementação de classe padrão, CMFCToolBarButton::OnSize, atualizando o tamanho e a posição do objeto CEdit
interno.
CMFCToolBarEditBoxButton::OnUpdateToolTip
Chamado pela estrutura quando a barra de ferramentas pai atualiza o texto da dica de ferramenta.
virtual BOOL OnUpdateToolTip(
CWnd* pWndParent,
int iButtonIndex,
CToolTipCtrl& wndToolTip,
CString& str);
Parâmetros
pWndParent
[in] Não é usado.
iButtonIndex
[in] Não é usado.
wndToolTip
[in] O controle que exibe o texto da dica de ferramenta.
str
[out] Um objeto CString
que recebe o texto da dica de ferramenta atualizado.
Valor de retorno
Um valor diferente de zero, se o método atualizar o texto de dica de ferramenta. Caso contrário, 0.
Comentários
Esse método estende a implementação da classe base (CMFCToolBarButton::OnUpdateToolTip) exibindo o texto da dica de ferramenta associado à parte de edição do botão. Se o objeto interno CEdit
for NULL ou o identificador de janela do objeto CEdit
não identificar uma janela existente, esse método não fará nada e retornará FALSE.
CMFCToolBarEditBoxButton::SetContents
Define o texto no controle da caixa de texto.
virtual void SetContents(const CString& sContents);
Parâmetros
sContents
[in] Especifica o novo texto a ser definido.
CMFCToolBarEditBoxButton::SetContentsAll
Localiza um objeto CMFCToolBarEditBoxButton que tem uma ID de comando especificada e define o texto especificado dentro de sua caixa de texto.
static BOOL SetContentsAll(
UINT uiCmd,
const CString& strContents);
Parâmetros
uiCmd
[in] Especifica a ID de comando do controle para o qual o texto será alterado.
strContents
[in] Especifica o novo texto a ser definido.
Valor de retorno
Não zero se o texto tiver sido definido; 0 se o controle CMFCToolBarEditBoxButton
com a ID de comando especificada não existir.
CMFCToolBarEditBoxButton::SetContextMenuID
Especifica a ID do recurso do menu de atalho associado ao botão.
void SetContextMenuID(UINT uiResID);
Parâmetros
uiCmd
[in] A ID do recurso do menu de atalho.
Comentários
A estrutura usa a ID do recurso para criar o menu de atalho quando o usuário clica com o botão direito do mouse no botão de barra de ferramentas.
CMFCToolBarEditBoxButton::SetFlatMode
Especifica a aparência de estilo simples dos botões de caixa de edição no aplicativo.
static void __stdcall SetFlatMode(BOOL bFlat = TRUE);
Parâmetros
bFlat
[in] O estilo simples para botões de caixa de edição. Se esse parâmetro for TRUE, a aparência de estilo simples estará habilitada; caso contrário, a aparência de estilo simples estará desabilitada.
Comentários
O estilo simples padrão para botões de caixa de edição é TRUE. Use o método CMFCToolBarEditBoxButton::IsFlatMode para recuperar a aparência de estilo simples para seu aplicativo.
CMFCToolBarEditBoxButton::SetStyle
Especifica o estilo de um controle de caixa de edição da barra de ferramentas.
virtual void SetStyle(UINT nStyle);
Parâmetros
nEstilo
[in] Um novo estilo a ser definido.
Comentários
Esse método define CMFCToolBarButton::m_nStyle como nStyle Ele também desabilita a caixa de texto quando o aplicativo está no modo Personalizar e o habilita quando o aplicativo não está no modo Personalizar (confira CMFCToolBar::SetCustomizeMode e CMFCToolBar::IsCustomizeMode). Confira Estilos de Controle de Barra de Ferramentas para obter uma lista de sinalizadores de estilo válidos.
Confira também
Gráfico da hierarquia
Classes
Classe CMFCToolBarButton
Classe CEdit
CMFCToolBar::ReplaceButton
Instruções passo a passo: colocando controles em barras de ferramentas