Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
A CMFCEditBrowseCtrl classe suporta o controle edit browse (editar navegação), que é uma caixa de texto editável que opcionalmente contém um botão procurar. Quando o usuário clica no botão Procurar, o controle executa uma ação personalizada ou exibe uma caixa de diálogo padrão que contém um navegador de arquivos ou um navegador de pastas.
Sintaxe
class CMFCEditBrowseCtrl : public CEdit
Membros
Construtores Públicos
| Nome | Descrição |
|---|---|
CMFCEditBrowseCtrl::CMFCEditBrowseCtrl |
Construtor padrão. |
CMFCEditBrowseCtrl::~CMFCEditBrowseCtrl |
Destruidor. |
Métodos Públicos
| Nome | Descrição |
|---|---|
| CMFCEditBrowseCtrl::EnableBrowseButton | Ativa ou desativa (oculta) o botão de navegação. |
| CMFCEditBrowseCtrl::EnableFileBrowseButton | Ativa o botão Procurar e coloca o controle de pesquisa de edição no modo de pesquisa de arquivos . |
| CMFCEditBrowseCtrl::EnableFolderBrowseButton | Habilita o botão Procurar e coloca o controle de pesquisa de edição no modo de navegação de pasta . |
| CMFCEditBrowseCtrl::GetMode | Retorna o modo de navegação atual. |
| CMFCEditBrowseCtrl::OnAfterUpdate | Chamado pela estrutura depois que o controle edit browse é atualizado com o resultado de uma ação de navegação. |
| CMFCEditBrowseCtrl::OnBrowse | Chamado pela estrutura depois que o usuário clica no botão procurar. |
| CMFCEditBrowseCtrl::OnChangeLayout | Redesenha o controle de navegação de edição atual. |
| CMFCEditBrowseCtrl::OnDrawBrowseButton | Chamado pela estrutura para desenhar o botão procurar. |
| CMFCEditBrowseCtrl::OnIllegalFileName | Chamado pela estrutura quando um nome de arquivo ilegal foi inserido no controle de edição. |
CMFCEditBrowseCtrl::PreTranslateMessage |
Traduz mensagens de janela antes de serem enviadas para as funções TranslateMessage e DispatchMessage do Windows. Para obter sintaxe e mais informações, consulte CWnd::P reTranslateMessage. |
| CMFCEditBrowseCtrl::SetBrowseButtonImage | Define uma imagem personalizada para o botão Procurar. |
Observações
Use um controle de navegação de edição para selecionar um nome de arquivo ou pasta. Opcionalmente, use o controle para executar uma ação personalizada, como exibir uma caixa de diálogo. Você pode exibir ou não exibir o botão de navegação e pode aplicar um rótulo ou imagem personalizada no botão.
O modo de navegação do controle de pesquisa de edição determina se ele exibe um botão de navegação e qual ação ocorre quando o botão é clicado. Para obter mais informações, consulte o método GetMode .
A CMFCEditBrowseCtrl classe suporta os seguintes modos.
modo personalizado
Uma ação personalizada é executada quando o usuário clica no botão Procurar. Por exemplo, você pode exibir uma caixa de diálogo específica do aplicativo.
modo de arquivo
Uma caixa de diálogo de seleção de arquivo padrão é exibida quando o usuário clica no botão Procurar.
modo de pasta
Uma caixa de diálogo de seleção de pasta padrão é exibida quando o usuário clica no botão Procurar.
Como fazer: Especificar um controle Edit Browse
Execute as seguintes etapas para incorporar um controle de pesquisa de edição em seu aplicativo:
Se você quiser implementar um modo de navegação personalizado, derive sua própria classe da classe e, em seguida, substitua
CMFCEditBrowseCtrlo método CMFCEditBrowseCtrl::OnBrowse . No método substituído, execute uma ação de navegação personalizada e atualize o controle de navegação de edição com o resultado.Incorpore o
CMFCEditBrowseCtrlobjeto ou o objeto de controle edit browse derivado no objeto de janela pai.Se você usar o Assistente de classe para criar uma caixa de diálogo, adicione um controle de edição (
CEdit) ao formulário da caixa de diálogo. Além disso, adicione uma variável para acessar o controle em seu arquivo de cabeçalho. No arquivo de cabeçalho, altere o tipo da variável deCEditparaCMFCEditBrowseCtrl. O controle de navegação de edição será criado automaticamente. Se você não usar o Assistente de classe, adicione umaCMFCEditBrowseCtrlvariável ao arquivo de cabeçalho e, em seguida, chame seuCreatemétodo.Se você adicionar um controle de navegação de edição a uma caixa de diálogo, use a ferramenta ClassWizard para configurar a troca de dados.
Chame o método EnableFolderBrowseButton, EnableFileBrowseButton ou EnableBrowseButton para definir o modo de navegação e exibir o botão de navegação. Chame o método GetMode para obter o modo de navegação atual.
Para fornecer uma imagem personalizada para o botão Procurar, chame o método SetBrowseButtonImage ou substitua o método OnDrawBrowseButton .
Para remover o botão Procurar do controle de navegação de edição, chame o método EnableBrowseButton com o parâmetro bEnable definido como FALSE.
Hierarquia de herança
Exemplo
O exemplo a CMFCEditBrowseCtrl seguir demonstra como usar dois métodos na classe: EnableFolderBrowseButton e EnableFileBrowseButton. Este exemplo faz parte do exemplo New Controls.
CMFCEditBrowseCtrl m_wndFolderEdit;
CMFCEditBrowseCtrl m_wndFileEdit;
// enable the browse button and put the control in file browse mode
m_wndFolderEdit.EnableFolderBrowseButton();
// enable the browse button and put the control in the folder browse mode
m_wndFileEdit.EnableFileBrowseButton();
Requerimentos
Cabeçalho: afxeditbrowsectrl.h
CMFCEditBrowseCtrl::EnableBrowseButton
Exibe ou não exibe o botão Procurar no controle de navegação de edição atual.
void EnableBrowseButton(
BOOL bEnable=TRUE,
LPCTSTR szLabel=_T("..."));
Parâmetros
bAtivar
TRUE para exibir o botão de navegação; FALSO para não exibir o botão de navegação. O valor padrão é TRUE.
szLabel
O rótulo exibido no botão Procurar. O valor padrão é " ...".
Observações
Se o parâmetro bEnable for TRUE, implemente uma ação personalizada para executar quando o botão Procurar for clicado. Para implementar uma ação personalizada, derive uma classe da classe e, em seguida, substitua CMFCEditBrowseCtrl seu método OnBrowse .
Se o parâmetro bEnable for TRUE, o modo de navegação do controle será BrowseMode_Default; caso contrário, o modo de navegação será BrowseMode_None. Para obter mais informações sobre modos de navegação, consulte o método GetMode .
CMFCEditBrowseCtrl::EnableFileBrowseButton
Exibe o botão Procurar no controle de pesquisa de edição atual e coloca o controle no modo de navegação de arquivo .
void EnableFileBrowseButton(
LPCTSTR lpszDefExt=NULL,
LPCTSTR lpszFilter=NULL,
DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT);
Parâmetros
lpszDefExt
Especifica a extensão de nome de arquivo padrão usada na caixa de diálogo de seleção de arquivo. O valor padrão é NULL.
lpszFilter
Especifica a cadeia de caracteres de filtro padrão usada na caixa de diálogo de seleção de arquivo. O valor padrão é NULL.
dwBandeiras
Sinalizadores de caixa de diálogo. O valor padrão é uma combinação bit a bit (OR) de OFN_HIDEREADONLY e OFN_OVERWRITEPROMPT.
Observações
Quando o controle de pesquisa de edição está no modo de navegação de arquivo e o usuário clica no botão procurar, o controle exibe a caixa de diálogo de seleção de arquivo padrão.
Para obter uma lista completa dos sinalizadores disponíveis, consulte OPENFILENAME structure.
CMFCEditBrowseCtrl::EnableFolderBrowseButton
Exibe o botão Procurar no controle de pesquisa de edição atual e coloca o controle no modo de navegação de pasta .
void EnableFolderBrowseButton();
Observações
Quando o controle edit browse está no modo de navegação de pasta e o usuário clica no botão procurar, o controle exibe a caixa de diálogo de seleção de pasta padrão.
CMFCEditBrowseCtrl::GetMode
Recupera o modo de navegação do controle de navegação de edição atual.
CMFCEditBrowseCtrl::BrowseMode GetMode() const;
Valor de retorno
Um dos valores de enumeração que especifica o modo atual do controle de navegação de edição. O modo de navegação determina se a estrutura exibe o botão Procurar e qual ação ocorre quando um usuário clica nesse botão.
A tabela a seguir lista os valores de retorno possíveis.
| Valor | Descrição |
|---|---|
BrowseMode_Default |
modo personalizado. Uma ação definida pelo programador é executada. |
BrowseMode_File |
modo de arquivo. A caixa de diálogo padrão do navegador de arquivos é exibida. |
BrowseMode_Folder |
modo de pasta. A caixa de diálogo padrão do navegador de pastas é exibida. |
BrowseMode_None |
O botão Procurar não é exibido. |
Observações
Por padrão, um CMFCEditBrowseCtrl objeto é inicializado no BrowseMode_None modo. Modifique o modo de navegação com os métodos CMFCEditBrowseCtrl::EnableBrowseButton, CMFCEditBrowseCtrl::EnableFileBrowseButton e CMFCEditBrowseCtrl::EnableFolderBrowseButton .
CMFCEditBrowseCtrl::OnAfterUpdate
Chamado pela estrutura depois que o controle edit browse é atualizado com o resultado de uma ação de navegação.
virtual void OnAfterUpdate();
Observações
Substitua esse método em uma classe derivada para implementar uma ação personalizada.
CMFCEditBrowseCtrl::OnBrowse
Chamado pela estrutura depois que o usuário clica no botão Procurar do controle de navegação de edição.
virtual void OnBrowse();
Observações
Use esse método para executar código personalizado quando o usuário clica no botão Procurar do controle de navegação de edição. Derive sua própria classe da classe e substitua CMFCEditBrowseCtrl seu OnBrowse método. Nesse método, implemente uma ação de navegação personalizada e, opcionalmente, atualize a caixa de texto do controle de navegação de edição. Em seu aplicativo, use o método EnableBrowseButton para colocar o controle edit browse no modo de navegação personalizado .
CMFCEditBrowseCtrl::OnChangeLayout
Redesenha o controle de navegação de edição atual.
virtual void OnChangeLayout();
Observações
A estrutura chama esse método quando o modo de navegação do controle de navegação de edição é alterado. Para obter mais informações, consulte CMFCEditBrowseCtrl::GetMode.
CMFCEditBrowseCtrl::OnDrawBrowseButton
Chamado pela estrutura para desenhar o botão de navegação no controle de navegação de edição.
virtual void OnDrawBrowseButton(
CDC* pDC,
CRect rect,
BOOL bIsButtonPressed,
BOOL bIsButtonHot);
Parâmetros
pDC
Um ponteiro para um contexto de dispositivo.
Rect
O retângulo delimitador do botão de navegação.
bIsButtonPressionado
TRUE se o botão for pressionado; caso contrário, FALSE.
bIsButtonHot
TRUE se o botão estiver realçado; caso contrário, FALSE.
Observações
Substitua essa função em uma classe derivada para personalizar a aparência do botão Procurar.
CMFCEditBrowseCtrl::SetBrowseButtonImage
Define uma imagem personalizada no botão Procurar do controle de navegação de edição.
void SetBrowseButtonImage(
HICON hIcon,
BOOL bAutoDestroy= TRUE);
void SetBrowseButtonImage(
HBITMAP hBitmap,
BOOL bAutoDestroy= TRUE);
void SetBrowseButtonImage(UINT uiBmpResId);
Parâmetros
hIcon
A alça de um ícone.
hBitmap
O identificador de um bitmap.
uiBmpResId
A ID do recurso de um bitmap.
bAutoDestruição
TRUE para excluir o ícone ou bitmap especificado quando esse método é encerrado; caso contrário, FALSE. O valor padrão é TRUE.
Observações
Use esse método para aplicar uma imagem personalizada ao botão Procurar. Por padrão, a estrutura obtém uma imagem padrão quando o controle de pesquisa de edição está no modo de pesquisa de arquivos ou de pastas .
CMFCEditBrowseCtrl::OnIllegalFileName
Chamado pela estrutura quando um nome de arquivo ilegal foi inserido no controle de edição.
virtual BOOL OnIllegalFileName(CString& strFileName);
Parâmetros
strFileName
Especifica o nome do arquivo ilegal.
Valor de retorno
Deve retornar FALSE se esse nome de arquivo não puder ser passado mais para a caixa de diálogo do arquivo. Nesse caso, o foco é definido de volta para o controle de edição e o usuário deve continuar editando. A implementação padrão exibe uma caixa de mensagem informando o usuário sobre o nome do arquivo ilegal e retorna FALSE. Você pode substituir esse método, corrigir o nome do arquivo e retornar TRUE para processamento posterior.