Partilhar via


Classe CNetAddressCtrl

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.

A CNetAddressCtrl classe representa o controlo de endereços de rede, que pode usar para introduzir e validar o formato dos endereços IPv4, IPv6 e DNS nomeados.

Sintaxe

class CNetAddressCtrl : public CEdit

Membros

Construtores Públicos

Nome Description
CNetAddressCtrl::CNetAddressCtrl Constrói um CNetAddressCtrl objeto.

Métodos Públicos

Nome Description
CNetAddressCtrl::Create Cria um controlo de endereço de rede com estilos especificados e anexa-o ao objeto atual CNetAddressCtrl .
CNetAddressCtrl::CreateEx Cria um controlo de endereço de rede com estilos estendidos especificados e anexa-o ao objeto atual CNetAddressCtrl .
CNetAddressCtrl::D isplayErrorTip Apresenta uma dica de balão de erro quando o utilizador insere um endereço de rede não suportado no controlo de endereços de rede atual.
CNetAddressCtrl::GetAddress Recupera uma representação validada e analisada do endereço de rede associado ao controlo atual de endereços de rede.
CNetAddressCtrl::GetAllowType Recupera o tipo de endereço de rede que o controlo de endereços de rede atual pode suportar.
CNetAddressCtrl::SetAllowType Define o tipo de endereço de rede que o controlo de endereços de rede atual pode suportar.

Observações

O controlo de endereços de rede verifica se o formato do endereço introduzido pelo utilizador está correto. O controlo não se liga realmente ao endereço da 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 ser na forma de IPv4, IPv6 ou endereço nomeado para um destino de servidor, rede, host ou mensagem de broadcast. Se o formato do endereço estiver incorreto, pode usar o método CNetAddressCtrl::D isplayErrorTip para mostrar uma caixa de mensagem infotip que aponta graficamente para a caixa de texto do controlo de endereços de rede e apresenta uma mensagem de erro pré-definida.

A CNetAddressCtrl classe deriva da classe CEdit . Consequentemente, o controlo de endereços de rede dá acesso a todas as mensagens de controlo de edição do Windows.

A figura seguinte mostra um diálogo que contém um controlo de endereço de rede. A caixa de texto (1) para o controlo de endereços de rede contém um endereço de rede inválido. A mensagem infotip (2) é exibida se o endereço de rede for inválido.

Diálogo com um controlo de endereços de rede e infotip.

Exemplos

O exemplo de código seguinte é uma parte de um diálogo que valida um endereço de rede. Os gestores de eventos para três botões de rádio especificam que o endereço de rede pode ser um de três tipos de endereço. O utilizador insere um endereço na caixa de texto do controlo de rede e depois pressiona um botão para validar o endereço. Se o endereço for válido, é exibida uma mensagem de sucesso; caso contrário, a mensagem de erro infotip pré-definida é 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 seguinte exemplo de código do ficheiro de cabeçalho 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

CObject

CCmdTarget

CWnd

CEdit

CNetAddressCtrl

Requerimentos

Cabeçalho: afxcmn.h

Esta classe é suportada no Windows Vista e versões posteriores.

Requisitos adicionais para esta classe são descritos em Requisitos de Construção para Controlos Comuns do Windows Vista.

CNetAddressCtrl::CNetAddressCtrl

Constrói um CNetAddressCtrl objeto.

CNetAddressCtrl();

Observações

Use o método CNetAddressCtrl::Create ou CNetAddressCtrl::CreateEx para criar um controlo de rede e anexá-lo ao CNetAddressCtrl objeto.

CNetAddressCtrl::Create

Cria um controlo de endereço de rede com estilos especificados e anexa-o ao objeto atual CNetAddressCtrl .

virtual BOOL Create(
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Parâmetros

dwStyle
[dentro] Uma combinação bit a bit de estilos a aplicar ao controlo. Para mais informações, consulte Editar Estilos.

retângulo
[dentro] Uma referência a uma estrutura RECT que contém a posição e o tamanho do controlo.

pParentWnd
[dentro] Um ponteiro não nulo para um objeto CWnd que é a janela pai do controlo.

nID
[dentro] O ID do controlo.

Valor de retorno

TRUE se este método for bem-sucedido; caso contrário, FALSO.

CNetAddressCtrl::CreateEx

Cria um controlo de endereço de rede com estilos estendidos especificados e anexa-o ao objeto atual CNetAddressCtrl .

virtual BOOL CreateEx(
    DWORD dwExStyle,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Parâmetros

dwExStyle
[dentro] Uma combinação bit a bit (OR) de estilos estendidos a ser aplicada ao controlo. Para mais informações, consulte o parâmetro dwExStyle da função CreateWindowEx .

dwStyle
[dentro] Uma combinação bit a bit (OR) de estilos a aplicar ao controlo. Para mais informações, consulte Editar Estilos.

retângulo
[dentro] Uma referência a uma estrutura RECT que contém a posição e o tamanho do controlo.

pParentWnd
[dentro] Um ponteiro não nulo para um objeto CWnd que é a janela pai do controlo.

nID
[dentro] O ID do controlo.

Valor de retorno

TRUE se este método for bem-sucedido; caso contrário, FALSO.

CNetAddressCtrl::D isplayErrorTip

Apresenta uma mensagem de erro na ponta do balão associada ao controlo de endereços de rede atual.

HRESULT DisplayErrorTip();

Valor de retorno

O valor S_OK se este método for bem-sucedido; caso contrário, um código de erro.

Observações

Use o método CNetAddressCtrl::SetAllowType para especificar os tipos de endereços que o controlo atual de endereços de rede pode suportar. Use o método CNetAddressCtrl::GetAddress para validar e analisar o endereço de rede que o utilizador insere. Use o método CNetAddressCtrl::D isplayErrorTip para mostrar uma informação de mensagem de erro caso o método CNetAddressCtrl::GetAddress não tenha sucesso.

Esta mensagem invoca a macro NetAddr_DisplayErrorTip , que é descrita no SDK do Windows. Esse macro transmite a NCM_DISPLAYERRORTIP mensagem.

CNetAddressCtrl::GetAddress

Recupera uma representação validada e analisada do endereço de rede associado ao controlo atual de endereços de rede.

HRESULT GetAddress(PNC_ADDRESS pAddress) const;

Parâmetros

pAddress
[inspira, expira] Aponta para uma estrutura NC_ADDRESS . Defina o membro pAddrInfo desta estrutura para o endereço de uma estrutura NET_ADDRESS_INFO antes de chamar o método GetAddress.

Valor de retorno

O valor S_OK se este método for bem-sucedido; caso contrário, um código de erro COM. Para mais informações sobre os possíveis códigos de erro, consulte a secção Return Value da macro NetAddr_GetAddress .

Observações

Se este método for bem-sucedido, a estrutura NET_ADDRESS_INFO contém informação adicional sobre o endereço da rede.

Use o método CNetAddressCtrl::SetAllowType para especificar os tipos de endereços que o controlo atual de endereços de rede pode suportar. Use o método CNetAddressCtrl::GetAddress para validar e analisar o endereço de rede que o utilizador insere. Use o método CNetAddressCtrl::D isplayErrorTip para mostrar uma informação de mensagem de erro caso o método CNetAddressCtrl::GetAddress não tenha sucesso.

Este método invoca a macro NetAddr_GetAddress , que é descrita no SDK do Windows. Esse macro envia a mensagem NCM_GETADDRESS.

CNetAddressCtrl::GetAllowType

Recupera o tipo de endereço de rede que o controlo de endereços de rede atual pode suportar.

DWORD GetAllowType() const;

Valor de retorno

Uma combinação bit a bit (OR) de flags que especifica os tipos de endereços que o controlo de endereços de rede pode suportar. Para mais informações, consulte NET_STRING.

Observações

Esta mensagem invoca a macro NetAddr_GetAllowType , que é descrita no SDK do Windows. Esse macro envia a mensagem NCM_GETALLOWTYPE.

CNetAddressCtrl::SetAllowType

Define o tipo de endereço de rede que o controlo de endereços de rede atual pode suportar.

HRESULT SetAllowType(DWORD dwAddrMask);

Parâmetros

dwAddrMask
[dentro] Uma combinação bit a bit (OR) de flags que especifica os tipos de endereços que o controlo de endereços de rede pode suportar. Para mais informações, consulte NET_STRING.

Valor de retorno

S_OK se este método for bem-sucedido; caso contrário, um código de erro COM.

Observações

Use o método CNetAddressCtrl::SetAllowType para especificar os tipos de endereços que o controlo atual de endereços de rede pode suportar. Use o método CNetAddressCtrl::GetAddress para validar e analisar o endereço de rede que o utilizador insere. Use o método CNetAddressCtrl::D isplayErrorTip para mostrar uma informação de mensagem de erro caso o método CNetAddressCtrl::GetAddress não tenha sucesso.

Esta mensagem invoca a macro NetAddr_SetAllowType , que é descrita no SDK do Windows. Esse macro envia a mensagem NCM_SETALLOWTYPE.

Consulte também

Classe CNetAddressCtrl
Gráfico de Hierarquia
Classe CEdit