Partilhar via


Classe CMFCToolBarEditBoxButton

Observação

A biblioteca Microsoft Foundation Classes (MFC) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.

Um botão de barra de ferramentas que contém um controlo de edição ( CEdit Class).

Sintaxe

class CMFCToolBarEditBoxButton : public CMFCToolBarButton

Membros

Construtores Públicos

Nome Description
CMFCToolBarEditBoxButton::CMFCToolBarEditBoxButton Constrói um CMFCToolBarEditBoxButton objeto.
CMFCToolBarEditBoxButton::~CMFCToolBarEditBoxButton Destruidor.

Métodos Públicos

Nome Description
CMFCToolBarEditBoxButton::PodeSer Esticado Especifica se o utilizador pode esticar o botão durante a personalização. (Sobrepõe CMFCToolBarButton::CanBeStretched.)
CMFCToolBarEditBoxButton::CopyFrom Copia as propriedades de outro botão da barra de ferramentas para o botão atual. (Sobrepõe o CMFCToolBarButton::CopyFrom.)
CMFCToolBarEditBoxButton:: CMFCToolBarEditBoxButton::CreateEdit Cria um novo controlo de edição no botão.
CMFCToolBarEditBoxButton::CreateObject Usado pelo framework para criar uma instância dinâmica deste tipo de classe.
CMFCToolBarEditBoxButton::GetByCmd Recupera o primeiro CMFCToolBarEditBoxButton objeto na aplicação que tem o ID de comando especificado.
CMFCToolBarEditBoxButton::GetContentsAll Recupera o texto do primeiro controlo da barra de ferramentas da caixa de edição que tem o ID de comando especificado.
CMFCToolBarEditBoxButton::GetContextMenuID Recupera o 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 da caixa de edição.
CMFCToolBarEditBoxButton:: CMFCToolBarEditBoxButton::GetEditBox Devolve um ponteiro para o controlo de edição que está embutido no botão.
CMFCToolBarEditBoxButton::GetHwnd Recupera a alça da janela associada ao botão da barra de ferramentas. (Sobrepõe CMFCToolBarButton::GetHwnd.)
CMFCToolBarEditBoxButton::GetInvalidateRect Recupera a região da área do cliente do botão que deve ser redesenhada. (Sobrepõe CMFCToolBarButton::GetInvalidateRect.)
CMFCToolBarEditBoxButton::GetThisClass Usado pelo framework para obter um ponteiro para o objeto CRuntimeClass associado a este tipo de classe.
CMFCToolBarEditBoxButton::HaveHotBorder Determina se uma borda do botão é exibida quando o utilizador clica no botão. (Sobrepõe o CMFCToolBarButton::HaveHotBorder.)
CMFCToolBarEditBoxButton::IsFlatMode Determina se os botões da caixa de edição têm um estilo plano.
CMFCToolBarEditBoxButton::NotifyCommand Especifica se o botão processa a mensagem WM_COMMAND . (Sobrepõe o CMFCToolBarButton::NotifyCommand.)
CMFCToolBarEditBoxButton::OnAddToCustomizePage É chamado pela framework quando o botão é adicionado a uma caixa de diálogo Personalizar . (Sobrepõe o CMFCToolBarButton::OnAddToCustomizePage.)
CMFCToolBarEditBoxButton::OnCalculateSize Chamado pelo framework para calcular o tamanho do botão para o contexto do dispositivo especificado e para o estado de acoplamento. (Sobrepõe o CMFCToolBarButton::OnCalculateSize.)
CMFCToolBarEditBoxButton::OnChangeParentWnd Chamada pela framework quando o botão é inserido numa nova barra de ferramentas. (Sobrepõe CMFCToolBarButton::OnChangeParentWnd.)
CMFCToolBarEditBoxButton::OnClick É chamado pela framework quando o utilizador clica no botão do rato. (Sobrepõe o CMFCToolBarButton::OnClick.)
CMFCToolBarEditBoxButton::OnCtlColor Chamada pela framework quando a barra de ferramentas pai trata uma mensagem WM_CTLCOLOR. (Sobrepõe o CMFCToolBarButton::OnCtlColor.)
CMFCToolBarEditBoxButton::OnDraw É chamado pela framework para desenhar o botão usando os estilos e opções especificados. (Sobrepõe o CMFCToolBarButton::OnDraw.)
CMFCToolBarEditBoxButton::OnDrawOnCustomizeList Chamado pelo framework para desenhar o botão no painel de Comandos da caixa de diálogo Personalizar . (Sobrepõe o CMFCToolBarButton::OnDrawOnCustomizeList.)
CMFCToolBarEditBoxButton::OnGlobalFontsChanged Chamada pelo framework quando a fonte global mudou. (Sobrepõe CMFCToolBarButton::OnGlobalFontsChanged.)
CMFCToolBarEditBoxButton::OnMove É chamada pela framework quando a barra de ferramentas dos pais se move. (Sobrepõe o CMFCToolBarButton::OnMove.)
CMFCToolBarEditBoxButton::OnShow É chamado pela estrutura quando o botão se torna visível ou invisível. (Sobrepõe o CMFCToolBarButton::OnShow.)
CMFCToolBarEditBoxButton::OnSize É chamada pela framework quando a barra de ferramentas pai muda de tamanho ou posição e esta alteração faz com que o botão mude de tamanho. (Sobrepõe o CMFCToolBarButton::OnSize.)
CMFCToolBarEditBoxButton::OnUpdateToolTip Chamado pelo framework quando a barra de ferramentas dos pais atualiza o texto da tooltip. (Sobrepõe CMFCToolBarButton::OnUpdateToolTip.)
CMFCToolBarEditBoxButton::Serialize Lê este objeto de um arquivo ou escreve-o num arquivo. (Sobrescreve o CMFCToolBarButton::Serialize.)
CMFCToolBarEditBoxButton::SetACCData Preenche o objeto fornecido CAccessibilityData com dados de acessibilidade a partir do botão da barra de ferramentas. (Sobrepõe o CMFCToolBarButton::SetACCData.)
CMFCToolBarEditBoxButton:: CMFCToolBarEditBoxButton::SetConteúdos Define o texto no controlo de edição do botão.
CMFCToolBarEditBoxButton:: CMFCToolBarEditBoxButton::SetContentsAll Encontra o botão de controlo de edição que tem um ID de comando especificado e define o texto no controlo de edição desse botão.
CMFCToolBarEditBoxButton::SetContextMenuID Especifica o ID do recurso do menu de atalho associado ao botão.
CMFCToolBarEditBoxButton::SetFlatMode Especifica a aparência de estilo plano dos botões da caixa de edição na aplicação.
CMFCToolBarEditBoxButton:: CMFCToolBarEditBoxButton::SetStyle Especifica o estilo do botão. (Sobrepõe o CMFCToolBarButton::SetStyle.)

Observações

Para adicionar um botão de caixa de edição a uma barra de ferramentas, siga estes passos:

  1. Reserve um ID de recurso fictício para o botão no recurso da barra de ferramentas dos pais.

  2. Constrói um CMFCToolBarEditBoxButton objeto.

  3. No manipulador de mensagens que processa a AFX_WM_RESETTOOLBAR mensagem, substitua o botão fictício pelo novo botão combo box usando o CMFCToolBar::ReplaceButton.

Para mais informações, veja Guia: Colocar Controlos nas Barras de Ferramentas.

Example

O exemplo seguinte demonstra como usar vários métodos na CMFCToolBarEditBoxButton aula. O exemplo mostra como especificar que um utilizador pode esticar o botão durante a personalização, especificar que uma borda do botão é exibida quando o utilizador clica no botão, definir o texto no controlo da caixa de texto, especificar o estilo plano dos botões da caixa de edição na aplicação e especificar o estilo do controlo da 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

CObject

CMFCToolBarButton

CMFCToolBarEditBoxButton

Requerimentos

Cabeçalho: afxtoolbareditboxbutton.h

CMFCToolBarEditBoxButton::PodeSer Esticado

Especifica se o utilizador pode esticar o botão durante a personalização.

virtual BOOL CanBeStretched() const;

Valor de retorno

Este método devolve VERDADEIRO.

Observações

Por defeito, o framework não permite ao utilizador esticar um botão da barra de ferramentas durante a personalização. Este método estende a implementação da classe base ( CMFCToolBarButton::CanBeStretched) permitindo ao utilizador esticar um botão da barra de ferramentas da 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
[dentro] Especifica o ID do controlo.

iImage
[dentro] Especifica o índice baseado em zero de uma imagem da barra de ferramentas. A imagem está localizada no objeto de classe CMFCToolBarImages que a classe CMFCToolBar mantém.

dwStyle
[dentro] Especifica o estilo de controlo de edição.

iLargura
[dentro] Especifica a largura em pixels do controlo de edição.

Observações

O construtor padrão define o estilo de controlo de edição para a seguinte combinação:

WS_CHILD | WS_VISIBLE | ES_AUTOHSCROLL

A largura padrão do controlo é de 150 pixels.

CMFCToolBarEditBoxButton::CopyFrom

Copia as propriedades de outro botão da barra de ferramentas para o botão atual.

virtual void CopyFrom(const CMFCToolBarButton& src);

Parâmetros

src
[dentro] Uma referência ao botão de origem de onde copiar.

Observações

Chame este método para copiar outro botão da barra de ferramentas para este botão da barra de ferramentas. src deve ser do tipo CMFCToolBarEditBoxButton.

CMFCToolBarEditBoxButton::CreateEdit

Cria um novo controlo de edição no botão.

virtual CEdit* CreateEdit(
    CWnd* pWndParent,
    const CRect& rect);

Parâmetros

pWndParent
[dentro] Especifica a janela pai do controlo de edição. Não pode ser NULL.

retângulo
[dentro] Especifica o tamanho e a posição do controlo de edição.

Valor de retorno

Um ponteiro para o controlo de edição recém-criado; é NULL se a criação e anexão do controlo falharem.

Observações

Constroem um CMFCToolBarEditBoxButton objeto em dois passos. Primeiro chame o construtor, e depois chame CreateEdit, que cria o controlo de edição do Windows e o anexa ao CMFCToolBarEditBoxButton objeto.

CMFCToolBarEditBoxButton::GetByCmd

Recupera o primeiro CMFCToolBarEditBoxButton objeto na aplicação que tem o ID de comando especificado.

static CMFCToolBarEditBoxButton* __stdcall GetByCmd(UINT uiCmd);

Parâmetros

uiCmd
[dentro] O ID do comando do botão para recuperar.

Valor de retorno

O primeiro CMFCToolBarEditBoxButton objeto na aplicação que tem o ID de comando especificado, ou NULL se tal objeto não existir.

Observações

Este método de utilidade partilhada é usado por métodos como CMFCToolBarEditBoxButton::SetContentsAll e CMFCToolBarEditBoxButton::GetContentsAll para definir ou obter o texto do primeiro controlo da barra de ferramentas da caixa de edição que tem o ID de comando especificado.

CMFCToolBarEditBoxButton::GetContentsAll

Recupera o texto do primeiro controlo da barra de ferramentas da caixa de edição que tem o ID de comando especificado.

static CString __stdcall GetContentsAll(UINT uiCmd);

Parâmetros

uiCmd
[dentro] O ID do comando do botão de onde se pode retirar o conteúdo.

Valor de retorno

Um CString objeto que contém o texto do primeiro controlo da barra de ferramentas da caixa de edição que tem o ID de comando especificado.

Observações

Este método devolve a cadeia vazia se nenhum CMFCToolBarEditBoxButton objeto tiver o ID de comando especificado.

CMFCToolBarEditBoxButton::GetContextMenuID

Recupera o ID do recurso do menu de atalho associado ao botão.

UINT GetContextMenuID();

Valor de retorno

O ID do recurso do menu de atalho associado ao botão ou 0 se o botão não tiver um menu de atalho associado.

Observações

A framework utiliza o ID do recurso para criar o menu de atalho quando o utilizador clica com o botão direito.

CMFCToolBarEditBoxButton::GetEditBorder

Recupera o retângulo delimitador da parte de edição do botão da caixa de edição.

virtual void GetEditBorder(CRect& rectBorder);

Parâmetros

rectBorder
[fora] Uma referência ao CRect objeto que recebe o retângulo delimitador.

Observações

Este método recupera o retângulo delimitador do controlo de edição em coordenadas do cliente. Expande o tamanho do retângulo em cada direção em um pixel.

O método CMFCVisualManager::OnDrawEditBorder chama este método quando desenha a borda em torno de um CMFCToolBarEditBoxButton objeto.

CMFCToolBarEditBoxButton::GetEditBox

Devolve um ponteiro para o controlo CEdit Class que está embutido no botão.

CEdit* GetEditBox() const;

Valor de retorno

Um apontador para o controlo da Classe CEdit que o botão contém. É NULL se o CEdit controlo ainda não foi criado.

Observações

Crias o CEdit controlo chamando CMFCToolBarEditBoxButton::CreateEdit.

CMFCToolBarEditBoxButton::GetHwnd

Recupera a alça da janela associada ao botão da barra de ferramentas.

virtual HWND GetHwnd();

Valor de retorno

A maçaneta da janela associada ao botão.

Observações

Este método sobrepõe o método CMFCToolBarButton::GetHwnd ao devolver o handle da janela da parte de controlo de edição do botão da caixa de edição.

CMFCToolBarEditBoxButton::GetInvalidateRect

Recupera a região da área do cliente do botão que deve ser redesenhada.

virtual const CRect GetInvalidateRect() const;

Valor de retorno

Um CRect objeto que especifica a região que deve ser redesenhada.

Observações

Este 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 o utilizador clica no botão.

virtual BOOL HaveHotBorder() const;

Valor de retorno

Não nulo se um botão mostrar a sua borda quando selecionado; caso contrário, 0.

Observações

Este método estende a implementação da classe base, CMFCToolBarButton::HaveHotBorder, ao devolver um valor diferente de zero se o controlo for visível.

CMFCToolBarEditBoxButton::IsFlatMode

Determina se os botões da caixa de edição têm um estilo plano.

static BOOL __stdcall IsFlatMode();

Valor de retorno

Não zero se os botões tiverem um estilo plano; caso contrário, 0.

Observações

Por defeito, os botões da caixa de edição têm um estilo plano. Use o método CMFCToolBarEditBoxButton::SetFlatMode para alterar a aparência do estilo plano para a sua aplicação.

CMFCToolBarEditBoxButton::NotifyCommand

Especifica se o botão processa a mensagem WM_COMMAND .

virtual BOOL NotifyCommand(int iNotifyCode);

Parâmetros

iNotifyCode
[dentro] 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 tratada pela barra de ferramentas pai.

Observações

O framework chama este método quando está prestes a enviar uma mensagem WM_COMMAND para a janela principal.

Este método estende a implementação da classe base ( CMFCToolBarButton::NotifyCommand) ao processar a notificação EN_UPDATE . Para cada caixa de edição com o mesmo ID de comando que este objeto, define o seu rótulo de texto para o rótulo de texto desse objeto.

CMFCToolBarEditBoxButton::OnAddToCustomizePage

É chamado pela framework quando o botão é adicionado a uma caixa de diálogo Personalizar .

virtual void OnAddToCustomizePage();

Observações

Este método estende a implementação da classe base ( CMFCToolBarButton::OnAddToCustomizePage) copiando as propriedades do controlo da caixa de edição em qualquer barra de ferramentas que tenha o mesmo ID de comando que este objeto. Este método não faz nada se nenhuma barra de ferramentas tiver um controlo de caixa de edição com o mesmo ID de comando que este objeto.

Para mais informações sobre a caixa de diálogo Personalizar , consulte CMFCToolBarsCustomizeDialog Class.

CMFCToolBarEditBoxButton::OnChangeParentWnd

Chamada pela framework quando o botão é inserido numa nova barra de ferramentas.

virtual void OnChangeParentWnd(CWnd* pWndParent);

Parâmetros

pWndParent
[dentro] Um apontador para a nova janela parental.

Observações

Este método sobrepõe a implementação da classe base ( CMFCToolBarButton::OnChangeParentWnd) recriando o objeto interno CEdit .

CMFCToolBarEditBoxButton::OnClick

É chamado pela framework quando o utilizador clica no botão do rato.

virtual BOOL OnClick(
    CWnd* pWnd,
    BOOL bDelay = TRUE);

Parâmetros

pWnd
[dentro] Sem uso.

bDelay
[dentro] Sem uso.

Valor de retorno

Diferente de zero se o botão processar a mensagem de clique; caso contrário, 0.

Observações

Este método sobrepõe a implementação da classe base ( CMFCToolBarButton::OnClick) ao devolver um valor diferente de zero se o objeto interno CEdit estiver visível.

CMFCToolBarEditBoxButton::OnCtlColor

Chamada pela framework quando a barra de ferramentas pai trata uma mensagem WM_CTLCOLOR.

virtual HBRUSH OnCtlColor(
    CDC* pDC,
    UINT nCtlColor);

Parâmetros

pDC
[dentro] O contexto do dispositivo que mostra o botão.

nCtlColor
[dentro] Sem uso.

Valor de retorno

Uma pega para a escova global de janelas.

Observações

Este método sobrepõe a implementação da classe base ( CMFCToolBarButton::OnCtlColor) definindo as cores de texto e de fundo do contexto fornecido para o texto global e as cores de fundo, respetivamente.

Para mais informações sobre opções globais disponíveis para a sua aplicação, consulte AFX_GLOBAL_DATA Estrutura.

CMFCToolBarEditBoxButton::OnGlobalFontsChanged

Chamada pelo framework quando a fonte global mudou.

virtual void OnGlobalFontsChanged();

Observações

Este método estende a implementação da classe base ( CMFCToolBarButton::OnGlobalFontsChanged) alterando a fonte do controlo para a da fonte global.

Para mais informações sobre opções globais disponíveis para a sua aplicação, consulte AFX_GLOBAL_DATA Estrutura.

CMFCToolBarEditBoxButton::OnMove

É chamada pela framework quando a barra de ferramentas dos pais se move.

virtual void OnMove();

Observações

Este método sobrepõe a implementação da classe padrão (CMFCToolBarButton::OnMove) ao atualizar a posição do objeto interno CEdit

CMFCToolBarEditBoxButton::OnShow

É chamado pela estrutura quando o botão se torna visível ou invisível.

virtual void OnShow(BOOL bShow);

Parâmetros

bShow
[dentro] Especifica se o botão é visível. Se este parâmetro for VERDADEIRO, o botão é visível. Caso contrário, o botão não é visível.

Observações

Este método estende a implementação da classe base ( CMFCToolBarButton::OnShow) ao mostrar o botão se bShow for VERDADEIRO. Caso contrário, este método esconde o botão.

CMFCToolBarEditBoxButton::OnSize

É chamada pela framework quando a barra de ferramentas pai muda de tamanho ou posição e esta alteração faz com que o botão mude de tamanho.

virtual void OnSize(int iSize);

Parâmetros

iSize
[dentro] A nova largura do botão, em píxeis.

Observações

Este método sobrepõe a implementação da classe padrão, CMFCToolBarButton::OnSize, atualizando o tamanho e a posição do objeto interno CEdit .

CMFCToolBarEditBoxButton::OnUpdateToolTip

Chamado pelo framework quando a barra de ferramentas dos pais atualiza o texto da tooltip.

virtual BOOL OnUpdateToolTip(
    CWnd* pWndParent,
    int iButtonIndex,
    CToolTipCtrl& wndToolTip,
    CString& str);

Parâmetros

pWndParent
[dentro] Sem uso.

iButtonIndex
[dentro] Sem uso.

wndToolTip
[dentro] O controlo que mostra o texto da tooltip.

STR
[fora] Um objeto que recebe o texto atualizado da CString tooltip.

Valor de retorno

Diferente de zero se o método atualizar o texto da dica de ferramenta; caso contrário, 0.

Observações

Este método estende a implementação da classe base ( CMFCToolBarButton::OnUpdateToolTip) ao mostrar o texto da tooltip associado à parte de edição do botão. Se o objeto interno CEdit for NULL ou se o handler da janela do CEdit objeto não identificar uma janela existente, este método não faz nada e devolve FALSE.

CMFCToolBarEditBoxButton::SetConteúdos

Define o texto no controlo da caixa de texto.

virtual void SetContents(const CString& sContents);

Parâmetros

Índice
[dentro] Especifica o novo texto a definir.

CMFCToolBarEditBoxButton::SetContentsAll

Encontra um objeto CMFCToolBarEditBoxButton que tem um ID de comando especificado e define o texto especificado dentro da sua caixa de texto.

static BOOL SetContentsAll(
    UINT uiCmd,
    const CString& strContents);

Parâmetros

uiCmd
[dentro] Especifica o ID do comando do controlo para o qual o texto será alterado.

strConteúdos
[dentro] Especifica o novo texto a definir.

Valor de retorno

Diferente de zero se o texto estiver definido; 0 se o CMFCToolBarEditBoxButton controlo com o ID de comando especificado não existir.

CMFCToolBarEditBoxButton::SetContextMenuID

Especifica o ID do recurso do menu de atalho associado ao botão.

void SetContextMenuID(UINT uiResID);

Parâmetros

uiCmd
[dentro] O ID do recurso do menu de atalho.

Observações

A framework usa o ID de recurso para criar o menu de atalho quando o utilizador clica com o botão direito no botão da barra de ferramentas.

CMFCToolBarEditBoxButton::SetFlatMode

Especifica a aparência de estilo plano dos botões da caixa de edição na aplicação.

static void __stdcall SetFlatMode(BOOL bFlat = TRUE);

Parâmetros

bFlat
[dentro] O estilo plano para botões de caixa de edição. Se este parâmetro for VERDADEIRO, a aparência de estilo plano está ativada; caso contrário, a aparência de estilo plano é desativada.

Observações

O estilo plano padrão para os botões da caixa de edição é VERDADEIRO. Use o método CMFCToolBarEditBoxButton::IsFlatMode para recuperar a aparência de estilo plano para a sua aplicação.

CMFCToolBarEditBoxButton::SetStyle

Especifica o estilo de um controlo de caixa de edição da barra de ferramentas.

virtual void SetStyle(UINT nStyle);

Parâmetros

nStyle
[dentro] Um novo estilo para cenar.

Observações

Este método define o CMFCToolBarButton::m_nStyle para nStyle . Também desativa a caixa de texto quando a aplicação está em modo Personalizar, e ativa-a quando a aplicação não está em modo Personalizar (ver CMFCToolBar::SetCustomizeMode e CMFCToolBar::IsCustomizeMode). Consulte ToolBar Control Styles para uma lista de flags de estilo válidos.

Consulte também

Gráfico de Hierarquia
Classes
Classe CMFCToolBarButton
Classe CEdit
CMFCToolBar::ReplaceButton
Guia: Colocar Controlos nas Barras de Ferramentas