Udostępnij za pośrednictwem


Klasa CNetAddressCtrl

Klasa CNetAddressCtrl reprezentuje kontrolkę adresów sieciowych, której można użyć do wprowadzania i weryfikowania formatu IPv4, IPv6 i nazwanych adresów DNS.

Składnia

class CNetAddressCtrl : public CEdit

Członkowie

Konstruktory publiczne

Nazwa/nazwisko opis
CNetAddressCtrl::CNetAddressCtrl CNetAddressCtrl Tworzy obiekt.

Metody publiczne

Nazwa/nazwisko opis
CNetAddressCtrl::Create Tworzy kontrolkę adresów sieciowych z określonymi stylami i dołącza ją do bieżącego CNetAddressCtrl obiektu.
CNetAddressCtrl::CreateEx Tworzy kontrolkę adresów sieciowych z określonymi stylami rozszerzonymi i dołącza ją do bieżącego CNetAddressCtrl obiektu.
CNetAddressCtrl::D isplayErrorTip Wyświetla poradę balonu o błędzie, gdy użytkownik wprowadza nieobsługiwany adres sieciowy w bieżącej kontrolce adresów sieciowych.
CNetAddressCtrl::GetAddress Pobiera zweryfikowaną i przeanalizowaną reprezentację adresu sieciowego skojarzonego z bieżącą kontrolą adresów sieciowych.
CNetAddressCtrl::GetAllowType Pobiera typ adresu sieciowego, który może obsługiwać bieżąca kontrola adresów sieciowych.
CNetAddressCtrl::SetAllowType Ustawia typ adresu sieciowego, który może obsługiwać bieżąca kontrola adresów sieciowych.

Uwagi

Kontrola adresów sieciowych sprawdza, czy format wprowadzonego adresu użytkownika jest poprawny. Kontrolka nie łączy się z adresem sieciowym. Metoda CNetAddressCtrl::SetAllowType określa jeden lub więcej typów adresów, które metoda CNetAddressCtrl::GetAddress może analizować i weryfikować. Adres może mieć postać adresu IPv4, IPv6 lub nazwanego adresu serwera, sieci, hosta lub miejsca docelowego wiadomości emisji. Jeśli format adresu jest niepoprawny, możesz użyć metody CNetAddressCtrl::D isplayErrorTip , aby wyświetlić pole komunikatu z etykietką informacji, które graficznie wskazuje pole tekstowe kontrolki adresów sieciowych i wyświetla wstępnie zdefiniowany komunikat o błędzie.

Klasa CNetAddressCtrl pochodzi z klasy CEdit . W związku z tym kontrola adresów sieciowych zapewnia dostęp do wszystkich komunikatów kontroli edycji systemu Windows.

Na poniższej ilustracji przedstawiono okno dialogowe zawierające kontrolkę adresów sieciowych. Pole tekstowe (1) dla kontrolki adresów sieciowych zawiera nieprawidłowy adres sieciowy. Jeśli adres sieciowy jest nieprawidłowy, zostanie wyświetlony komunikat z etykietki informacji (2).

Dialog with a network address control and infotip.

Przykłady

Poniższy przykład kodu to część okna dialogowego, która weryfikuje adres sieciowy. Programy obsługi zdarzeń dla trzech przycisków radiowych określają, że adres sieciowy może być jednym z trzech typów adresów. Użytkownik wprowadza adres w polu tekstowym kontrolki sieci, a następnie naciska przycisk, aby zweryfikować adres. Jeśli adres jest prawidłowy, zostanie wyświetlony komunikat o powodzeniu; w przeciwnym razie zostanie wyświetlony wstępnie zdefiniowany komunikat o błędzie etykietki informacji.

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"));
   }

Poniższy przykład kodu z pliku nagłówka okna dialogowego definiuje zmienne NC_ADDRESS i NET_ADDRESS_INFO wymagane przez metodę CNetAddressCtrl::GetAddress .

NC_ADDRESS m_na;
NET_ADDRESS_INFO m_nai;

Hierarchia dziedziczenia

Cobject

Ccmdtarget

Cwnd

Cedit

CNetAddressCtrl

Wymagania

Nagłówek: afxcmn.h

Ta klasa jest obsługiwana w systemie Windows Vista i nowszych wersjach.

Dodatkowe wymagania dotyczące tej klasy opisano w temacie Build Requirements for Windows Vista Common Controls (Wymagania dotyczące kompilacji dla typowych kontrolek systemu Windows Vista).

CNetAddressCtrl::CNetAddressCtrl

CNetAddressCtrl Tworzy obiekt.

CNetAddressCtrl();

Uwagi

Użyj metody CNetAddressCtrl::Create lub CNetAddressCtrl::CreateEx, aby utworzyć kontrolkę sieci i dołączyć ją do CNetAddressCtrl obiektu.

CNetAddressCtrl::Create

Tworzy kontrolkę adresów sieciowych z określonymi stylami i dołącza ją do bieżącego CNetAddressCtrl obiektu.

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

Parametry

Dwstyle
[in] Bitowa kombinacja stylów, które mają być stosowane do kontrolki. Aby uzyskać więcej informacji, zobacz Edytowanie stylów.

Rect
[in] Odwołanie do struktury RECT zawierającej położenie i rozmiar kontrolki.

pParentWnd
[in] Wskaźnik o wartości innej niż null do obiektu CWnd , który jest oknem nadrzędnym kontrolki.

Nid
[in] Identyfikator kontrolki.

Wartość zwracana

Wartość TRUE, jeśli ta metoda zakończyła się pomyślnie; w przeciwnym razie, FAŁSZ.

CNetAddressCtrl::CreateEx

Tworzy kontrolkę adresów sieciowych z określonymi stylami rozszerzonymi i dołącza ją do bieżącego CNetAddressCtrl obiektu.

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

Parametry

Dwexstyle
[in] Kombinacja bitowa (OR) stylów rozszerzonych, które mają być stosowane do kontrolki. Aby uzyskać więcej informacji, zobacz parametr dwExStyle funkcji CreateWindowEx.

Dwstyle
[in] Kombinacja bitowa (OR) stylów, która ma być stosowana do kontrolki. Aby uzyskać więcej informacji, zobacz Edytowanie stylów.

Rect
[in] Odwołanie do struktury RECT zawierającej położenie i rozmiar kontrolki.

pParentWnd
[in] Wskaźnik o wartości innej niż null do obiektu CWnd , który jest oknem nadrzędnym kontrolki.

Nid
[in] Identyfikator kontrolki.

Wartość zwracana

Wartość TRUE, jeśli ta metoda zakończyła się pomyślnie; w przeciwnym razie, FAŁSZ.

CNetAddressCtrl::D isplayErrorTip

Wyświetla komunikat o błędzie w poradzie balonowej skojarzonej z bieżącą kontrolą adresów sieciowych.

HRESULT DisplayErrorTip();

Wartość zwracana

Wartość S_OK , jeśli ta metoda powiedzie się; w przeciwnym razie kod błędu.

Uwagi

Użyj metody CNetAddressCtrl::SetAllowType, aby określić typy adresów, które może obsługiwać bieżąca kontrola adresów sieciowych. Użyj metody CNetAddressCtrl::GetAddress, aby zweryfikować i przeanalizować adres sieciowy wprowadzony przez użytkownika. Użyj metody CNetAddressCtrl::D isplayErrorTip, aby wyświetlić etykietkę informacji o komunikacie o błędzie, jeśli metoda CNetAddressCtrl::GetAddress nie powiedzie się.

Ten komunikat wywołuje makro NetAddr_DisplayErrorTip opisane w zestawie Windows SDK. To makro wysyła NCM_DISPLAYERRORTIP komunikat.

CNetAddressCtrl::GetAddress

Pobiera zweryfikowaną i przeanalizowaną reprezentację adresu sieciowego skojarzonego z bieżącą kontrolą adresów sieciowych.

HRESULT GetAddress(PNC_ADDRESS pAddress) const;

Parametry

pAddress
[in, out] Wskaźnik do struktury NC_ADDRESS . Ustaw element członkowski pAddrInfo tej struktury na adres struktury NET_ADDRESS_INFO przed wywołaniem metody GetAddress.

Wartość zwracana

Wartość S_OK, jeśli ta metoda zakończy się pomyślnie; w przeciwnym razie kod błędu COM. Aby uzyskać więcej informacji na temat możliwych kodów błędów, zobacz sekcję Wartość zwracana makra NetAddr_GetAddress .

Uwagi

Jeśli ta metoda zakończy się pomyślnie, struktura NET_ADDRESS_INFO zawiera dodatkowe informacje o adresie sieciowym.

Użyj metody CNetAddressCtrl::SetAllowType, aby określić typy adresów, które może obsługiwać bieżąca kontrola adresów sieciowych. Użyj metody CNetAddressCtrl::GetAddress, aby zweryfikować i przeanalizować adres sieciowy wprowadzony przez użytkownika. Użyj metody CNetAddressCtrl::D isplayErrorTip, aby wyświetlić etykietkę informacji o komunikacie o błędzie, jeśli metoda CNetAddressCtrl::GetAddress nie powiedzie się.

Ta metoda wywołuje makro NetAddr_GetAddress opisane w zestawie Windows SDK. To makro wysyła komunikat NCM_GETADDRESS.

CNetAddressCtrl::GetAllowType

Pobiera typ adresu sieciowego, który może obsługiwać bieżąca kontrola adresów sieciowych.

DWORD GetAllowType() const;

Wartość zwracana

Kombinacja bitowa (OR) flag określających typy adresów, które mogą obsługiwać kontrolka adresów sieciowych. Aby uzyskać więcej informacji, zobacz NET_STRING.

Uwagi

Ten komunikat wywołuje makro NetAddr_GetAllowType opisane w zestawie Windows SDK. To makro wysyła komunikat NCM_GETALLOWTYPE.

CNetAddressCtrl::SetAllowType

Ustawia typ adresu sieciowego, który może obsługiwać bieżąca kontrola adresów sieciowych.

HRESULT SetAllowType(DWORD dwAddrMask);

Parametry

dwAddrMask
[in] Kombinacja bitowa (OR) flag określających typy adresów, które mogą obsługiwać kontrolka adresów sieciowych. Aby uzyskać więcej informacji, zobacz NET_STRING.

Wartość zwracana

S_OK, jeśli ta metoda zakończy się pomyślnie; w przeciwnym razie kod błędu COM.

Uwagi

Użyj metody CNetAddressCtrl::SetAllowType, aby określić typy adresów, które może obsługiwać bieżąca kontrola adresów sieciowych. Użyj metody CNetAddressCtrl::GetAddress, aby zweryfikować i przeanalizować adres sieciowy wprowadzony przez użytkownika. Użyj metody CNetAddressCtrl::D isplayErrorTip, aby wyświetlić etykietkę informacji o komunikacie o błędzie, jeśli metoda CNetAddressCtrl::GetAddress nie powiedzie się.

Ten komunikat wywołuje makro NetAddr_SetAllowType opisane w zestawie Windows SDK. To makro wysyła komunikat NCM_SETALLOWTYPE.

Zobacz też

Klasa CNetAddressCtrl
Wykres hierarchii
Klasa CEdit