CNetAddressCtrl Class
A classe CNetAddressCtrl
representa o controle de endereço de rede, que você pode usar para inserir e validar o formato de endereços IPv4, IPv6 e DNS nomeados.
Sintaxe
class CNetAddressCtrl : public CEdit
Membros
Construtores públicos
Nome | Descrição |
---|---|
CNetAddressCtrl::CNetAddressCtrl | Constrói um objeto CNetAddressCtrl . |
Métodos públicos
Nome | Descrição |
---|---|
CNetAddressCtrl::Create | Cria um controle de endereço de rede com estilos especificados e o anexa ao objeto atual CNetAddressCtrl . |
CNetAddressCtrl::CreateEx | Cria um controle de endereço de rede com estilos estendidos especificados e o anexa ao objeto atual CNetAddressCtrl . |
CNetAddressCtrl::DisplayErrorTip | Exibe uma dica de balão de erro quando o usuário insere um endereço de rede sem suporte no controle de endereço de rede atual. |
CNetAddressCtrl::GetAddress | Recupera uma representação validada e analisada do endereço de rede associado ao controle de endereço de rede atual. |
CNetAddressCtrl::GetAllowType | Recupera o tipo de endereço de rede que o controle de endereço de rede atual pode dar suporte. |
CNetAddressCtrl::SetAllowType | Define o tipo de endereço de rede que o controle de endereço de rede atual pode dar suporte. |
Comentários
O controle de endereço de rede verifica se o formato do endereço que o usuário insere está correto. Na verdade, o controle não se conecta ao endereço de rede. O método CNetAddressCtrl::SetAllowType especifica um ou mais tipos de endereço que o método CNetAddressCtrl::GetAddress pode analisar e verificar. Um endereço pode estar na forma de um IPv4, IPv6 ou endereço nomeado para um servidor, rede, host ou destino de mensagem de transmissão. Se o formato do endereço estiver incorreto, você pode usar o método CNetAddressCtrl::D isplayErrorTip para exibir uma caixa de mensagem de dica de informações que aponta graficamente para a caixa de texto do controle de endereço de rede e exibe uma mensagem de erro predefinida.
Essa classe CNetAddressCtrl
é derivada da classe CEdit. Consequentemente, o controle de endereço de rede fornece acesso a todas as mensagens de controle de edição do Windows.
A figura a seguir ilustra uma caixa de diálogo que contém um controle de endereço de rede. A caixa de texto (1) para o controle de endereço de rede contém um endereço de rede inválido. A mensagem de dica de informação (2) será exibida se o endereço de rede for inválido.
Exemplos
O exemplo de código a seguir é uma parte de uma caixa de diálogo que valida um endereço de rede. Os manipuladores de eventos para três botões de opção especificam que o endereço de rede pode ser um dos três tipos de endereço. O usuário insere um endereço na caixa de texto do controle de rede e, em seguida, pressiona um botão para validar o endereço. Se o endereço for válido, uma mensagem de êxito será exibida. Caso contrário, a mensagem de erro da dica de informações predefinida será exibida.
void CCNetAddressCtrl_s1Dlg::OnBnClickedRadio1()
{
m_netAddr.SetAllowType(NET_STRING_IPV4_ADDRESS);
}
void CCNetAddressCtrl_s1Dlg::OnBnClickedRadio2()
{
m_netAddr.SetAllowType(NET_STRING_IPV6_ADDRESS);
}
void CCNetAddressCtrl_s1Dlg::OnBnClickedRadio3()
{
m_netAddr.SetAllowType(NET_STRING_NAMED_ADDRESS);
}
void CCNetAddressCtrl_s1Dlg::OnBnClickedButton1()
{
m_na.pAddrInfo = &m_nai;
HRESULT rslt = m_netAddr.GetAddress(&m_na);
if (rslt != S_OK)
m_netAddr.DisplayErrorTip();
else
{
MessageBox(
_T("Success!"), _T("Validation Results"));
}
O exemplo de código a seguir do arquivo de cabeçalho da caixa de diálogo define as variáveis NC_ADDRESS e NET_ADDRESS_INFO exigidas pelo método CNetAddressCtrl::GetAddress.
NC_ADDRESS m_na;
NET_ADDRESS_INFO m_nai;
Hierarquia de herança
CNetAddressCtrl
Requisitos
Cabeçalho: afxcmn.h
Essa classe é compatível com o Windows Vista e posterior.
Requisitos adicionais para essa classe são descritos nos Requisitos de build para controles comuns do Windows Vista.
CNetAddressCtrl::CNetAddressCtrl
Constrói um objeto CNetAddressCtrl
.
CNetAddressCtrl();
Comentários
Use o método CNetAddressCtrl::Create ou CNetAddressCtrl::CreateEx para criar um controle de rede e anexá-lo ao objeto CNetAddressCtrl
.
CNetAddressCtrl::Create
Cria um controle de endereço de rede com estilos especificados e o anexa ao objeto atual CNetAddressCtrl
.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parâmetros
dwStyle
[in] Uma combinação bit a bit de estilos a serem aplicados ao controle. Para obter mais informações, confira Editar estilos.
rect
[in] Uma referência a uma estrutura RECT que contém a posição e o tamanho do controle.
pParentWnd
[in]Um ponteiro não nulo para um objeto CWnd que é a janela pai do controle.
Nid
[in] A ID do controle.
Valor de retorno
TRUE se o método for bem-sucedido; caso contrário, FALSE.
CNetAddressCtrl::CreateEx
Cria um controle de endereço de rede com estilos estendidos especificados e o anexa ao objeto atual CNetAddressCtrl
.
virtual BOOL CreateEx(
DWORD dwExStyle,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parâmetros
dwExStyle
[in] Uma combinação bit a bit (OU) de estilos estendidos a serem aplicados ao controle. Para obter mais informações, consulte o parâmetro dwExStyle da função CreateWindowEx.
dwStyle
[in] Uma combinação bit a bit (OU) de estilos a serem aplicados ao controle. Para obter mais informações, confira Editar estilos.
rect
[in] Uma referência a uma estrutura RECT que contém a posição e o tamanho do controle.
pParentWnd
[in]Um ponteiro não nulo para um objeto CWnd que é a janela pai do controle.
Nid
[in] A ID do controle.
Valor de retorno
TRUE se o método for bem-sucedido; caso contrário, FALSE.
CNetAddressCtrl::DisplayErrorTip
Exibe uma mensagem de erro na dica de balão associada ao controle de endereço de rede atual.
HRESULT DisplayErrorTip();
Valor de retorno
O valor S_OK
se esse método for bem-sucedido, caso contrário, um código de erro.
Comentários
Use o método CNetAddressCtrl::SetAllowType para especificar os tipos de endereços aos quais o controle de endereço de rede atual pode dar suporte. Use o método CNetAddressCtrl::GetAddress para validar e analisar o endereço de rede inserido pelo usuário. Use o método CNetAddressCtrl::DisplayErrorTip para exibir uma dica de informações de mensagem de erro se o método CNetAddressCtrl::GetAddress não for bem sucedido.
Essa mensagem chama a macro NetAddr_DisplayErrorTip, que é descrita no SDK do Windows. Essa macro envia a mensagem NCM_DISPLAYERRORTIP
.
CNetAddressCtrl::GetAddress
Recupera uma representação validada e analisada do endereço de rede associado ao controle de endereço de rede atual.
HRESULT GetAddress(PNC_ADDRESS pAddress) const;
Parâmetros
pAddress
[in, out] Ponteiro para uma estrutura NC_ADDRESS. Defina o membro pAddrInfo dessa estrutura como o endereço de uma estrutura NET_ADDRESS_INFO antes de chamar o método GetAddress.
Valor de retorno
O valor S_OK se esse método for bem-sucedido, caso contrário, um código de erro COM. Para obter mais informações sobre os possíveis códigos de erro, consulte a seção Valor retornado da macro NetAddr_GetAddress.
Comentários
Se esse método for bem-sucedido, a estrutura NET_ADDRESS_INFO conterá informações adicionais sobre o endereço de rede.
Use o método CNetAddressCtrl::SetAllowType para especificar os tipos de endereços aos quais o controle de endereço de rede atual pode dar suporte. Use o método CNetAddressCtrl::GetAddress para validar e analisar o endereço de rede inserido pelo usuário. Use o método CNetAddressCtrl::DisplayErrorTip para exibir uma dica de informações de mensagem de erro se o método CNetAddressCtrl::GetAddress não for bem sucedido.
Esse método invoca a macro NetAddr_GetAddress, que é descrita no SDK do Windows. Essa macro envia a mensagem NCM_GETADDRESS.
CNetAddressCtrl::GetAllowType
Recupera o tipo de endereço de rede que o controle de endereço de rede atual pode dar suporte.
DWORD GetAllowType() const;
Valor de retorno
Uma combinação bit a bit (OU) de sinalizadores que especifica os tipos de endereços que o controle de endereço de rede pode dar suporte. Para mais informações, confira NET_STRING.
Comentários
Essa mensagem chama a macro NetAddr_GetAllowType, que é descrita no SDK do Windows. Essa macro envia a mensagem NCM_GETALLOWTYPE.
CNetAddressCtrl::SetAllowType
Define o tipo de endereço de rede que o controle de endereço de rede atual pode dar suporte.
HRESULT SetAllowType(DWORD dwAddrMask);
Parâmetros
dwAddrMask
[in]Uma combinação bit a bit (OU) de sinalizadores que especifica os tipos de endereços que o controle de endereço de rede pode dar suporte. Para mais informações, confira NET_STRING.
Valor de retorno
S_OK se esse método for bem-sucedido, caso contrário, um código de erro COM.
Comentários
Use o método CNetAddressCtrl::SetAllowType para especificar os tipos de endereços aos quais o controle de endereço de rede atual pode dar suporte. Use o método CNetAddressCtrl::GetAddress para validar e analisar o endereço de rede inserido pelo usuário. Use o método CNetAddressCtrl::DisplayErrorTip para exibir uma dica de informações de mensagem de erro se o método CNetAddressCtrl::GetAddress não for bem sucedido.
Essa mensagem chama a macro NetAddr_SetAllowType, que é descrita no SDK do Windows. Essa macro envia a mensagem NCM_SETALLOWTYPE.