Classe CNetAddressCtrl
La classe CNetAddressCtrl
représente le contrôle d'adresse réseau, que vous pouvez utiliser pour entrer et valider le format des adresses IPv4, IPv6 et DNS nommées.
Syntaxe
class CNetAddressCtrl : public CEdit
Membres
Constructeurs publics
Nom | Description |
---|---|
CNetAddressCtrl ::CNetAddressCtrl | Construit un objet CNetAddressCtrl . |
Méthodes publiques
Nom | Description |
---|---|
CNetAddressCtrl ::Create | Crée un contrôle d’adresse réseau avec des styles spécifiés et l’attache à l’objet actuel CNetAddressCtrl . |
CNetAddressCtrl ::CreateEx | Crée un contrôle d’adresse réseau avec des styles étendus spécifiés et l’attache à l’objet actuel CNetAddressCtrl . |
CNetAddressCtrl ::D isplayErrorTip | Affiche une info-bulle d’erreur lorsque l’utilisateur entre une adresse réseau non prise en charge dans le contrôle d’adresse réseau actuel. |
CNetAddressCtrl ::GetAddress | Récupère une représentation validée et analysée de l’adresse réseau associée au contrôle d’adresse réseau actuel. |
CNetAddressCtrl ::GetAllowType | Récupère le type d’adresse réseau que le contrôle d’adresse réseau actuel peut prendre en charge. |
CNetAddressCtrl ::SetAllowType | Définit le type d’adresse réseau que le contrôle d’adresse réseau actuel peut prendre en charge. |
Notes
Le contrôle d’adresse réseau vérifie que le format de l’adresse entrée par l’utilisateur est correct. Le contrôle ne se connecte pas réellement à l’adresse réseau. La méthode CNetAddressCtrl ::SetAllowType spécifie un ou plusieurs types d’adresse que la méthode CNetAddressCtrl ::GetAddress peut analyser et vérifier. Une adresse peut être sous la forme d’une adresse IPv4, IPv6 ou nommée pour un serveur, un réseau, un hôte ou une destination de message de diffusion. Si le format de l’adresse est incorrect, vous pouvez utiliser la méthode CNetAddressCtrl ::D isplayErrorTip pour afficher une zone de message d’info-bulle qui pointe graphiquement vers la zone de texte du contrôle d’adresse réseau et affiche un message d’erreur prédéfini.
La CNetAddressCtrl
classe est dérivée de la classe CEdit . Par conséquent, le contrôle d’adresse réseau permet d’accéder à tous les messages de contrôle d’édition Windows.
La figure suivante illustre une boîte de dialogue qui contient un contrôle d’adresse réseau. La zone de texte (1) du contrôle d’adresse réseau contient une adresse réseau non valide. Le message d’info-bulle (2) s’affiche si l’adresse réseau n’est pas valide.
Exemples
L’exemple de code suivant est une partie d’une boîte de dialogue qui valide une adresse réseau. Les gestionnaires d’événements pour trois cases d’option spécifient que l’adresse réseau peut être l’un des trois types d’adresses. L’utilisateur entre une adresse dans la zone de texte du contrôle réseau, puis appuie sur un bouton pour valider l’adresse. Si l’adresse est valide, un message de réussite s’affiche ; sinon, le message d’erreur d’info-bulle prédéfini s’affiche.
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"));
}
L’exemple de code suivant à partir du fichier d’en-tête de boîte de dialogue définit les variables NC_ADDRESS et NET_ADDRESS_INFO requises par la méthode CNetAddressCtrl ::GetAddress .
NC_ADDRESS m_na;
NET_ADDRESS_INFO m_nai;
Hiérarchie d'héritage
CNetAddressCtrl
Spécifications
En-tête : afxcmn.h
Cette classe est prise en charge dans Windows Vista et versions ultérieures.
Des exigences supplémentaires pour cette classe sont décrites dans Build Requirements for Windows Vista Common Controls.
CNetAddressCtrl ::CNetAddressCtrl
Construit un objet CNetAddressCtrl
.
CNetAddressCtrl();
Notes
Utilisez la méthode CNetAddressCtrl ::Create ou CNetAddressCtrl ::CreateEx pour créer un contrôle réseau et l’attacher à l’objet CNetAddressCtrl
.
CNetAddressCtrl ::Create
Crée un contrôle d’adresse réseau avec des styles spécifiés et l’attache à l’objet actuel CNetAddressCtrl
.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Paramètres
dwStyle
[in] Combinaison de styles au niveau du bit à appliquer au contrôle. Pour plus d’informations, consultez Modifier les styles.
rect
[in] Référence à une structure RECT qui contient la position et la taille du contrôle.
pParentWnd
[in] Pointeur non null vers un objet CWnd qui est la fenêtre parente du contrôle.
nID
[in] ID du contrôle.
Valeur de retour
TRUE si cette méthode réussit ; sinon, FALSE.
CNetAddressCtrl ::CreateEx
Crée un contrôle d’adresse réseau avec des styles étendus spécifiés et l’attache à l’objet actuel CNetAddressCtrl
.
virtual BOOL CreateEx(
DWORD dwExStyle,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Paramètres
dwExStyle
[in] Combinaison de bits (OR) de styles étendus à appliquer au contrôle. Pour plus d’informations, consultez le paramètre dwExStyle de la fonction CreateWindowEx .
dwStyle
[in] Combinaison de bits (OR) de styles à appliquer au contrôle. Pour plus d’informations, consultez Modifier les styles.
rect
[in] Référence à une structure RECT qui contient la position et la taille du contrôle.
pParentWnd
[in] Pointeur non null vers un objet CWnd qui est la fenêtre parente du contrôle.
nID
[in] ID du contrôle.
Valeur de retour
TRUE si cette méthode réussit ; sinon, FALSE.
CNetAddressCtrl ::D isplayErrorTip
Affiche un message d’erreur dans l’info-bulle associé au contrôle d’adresse réseau actuel.
HRESULT DisplayErrorTip();
Valeur de retour
Valeur S_OK
si cette méthode réussit ; sinon, un code d’erreur.
Notes
Utilisez la méthode CNetAddressCtrl ::SetAllowType pour spécifier les types d’adresses que le contrôle d’adresse réseau actuel peut prendre en charge. Utilisez la méthode CNetAddressCtrl ::GetAddress pour valider et analyser l’adresse réseau que l’utilisateur entre. Utilisez la méthode CNetAddressCtrl ::D isplayErrorTip pour afficher une info-bulle de message d’erreur si la méthode CNetAddressCtrl ::GetAddress échoue.
Ce message appelle la macro NetAddr_DisplayErrorTip , qui est décrite dans le Kit de développement logiciel (SDK) Windows. Cette macro envoie le NCM_DISPLAYERRORTIP
message.
CNetAddressCtrl ::GetAddress
Récupère une représentation validée et analysée de l’adresse réseau associée au contrôle d’adresse réseau actuel.
HRESULT GetAddress(PNC_ADDRESS pAddress) const;
Paramètres
pAddress
[in, out] Pointeur vers une structure NC_ADDRESS . Définissez le membre pAddrInfo de cette structure sur l’adresse d’une structure NET_ADDRESS_INFO avant d’appeler la méthode GetAddress.
Valeur de retour
La valeur S_OK si cette méthode réussit ; sinon, un code d’erreur COM. Pour plus d’informations sur les codes d’erreur possibles, consultez la section Valeur de retour de la macro NetAddr_GetAddress .
Notes
Si cette méthode réussit, la structure NET_ADDRESS_INFO contient des informations supplémentaires sur l’adresse réseau.
Utilisez la méthode CNetAddressCtrl ::SetAllowType pour spécifier les types d’adresses que le contrôle d’adresse réseau actuel peut prendre en charge. Utilisez la méthode CNetAddressCtrl ::GetAddress pour valider et analyser l’adresse réseau que l’utilisateur entre. Utilisez la méthode CNetAddressCtrl ::D isplayErrorTip pour afficher une info-bulle de message d’erreur si la méthode CNetAddressCtrl ::GetAddress échoue.
Cette méthode appelle la macro NetAddr_GetAddress , qui est décrite dans le Kit de développement logiciel (SDK) Windows. Cette macro envoie le message NCM_GETADDRESS.
CNetAddressCtrl ::GetAllowType
Récupère le type d’adresse réseau que le contrôle d’adresse réseau actuel peut prendre en charge.
DWORD GetAllowType() const;
Valeur de retour
Combinaison de bits (OR) d’indicateurs qui spécifie les types d’adresses que le contrôle d’adresse réseau peut prendre en charge. Pour plus d’informations, consultez NET_STRING.
Notes
Ce message appelle la macro NetAddr_GetAllowType , qui est décrite dans le Kit de développement logiciel (SDK) Windows. Cette macro envoie le message NCM_GETALLOWTYPE.
CNetAddressCtrl ::SetAllowType
Définit le type d’adresse réseau que le contrôle d’adresse réseau actuel peut prendre en charge.
HRESULT SetAllowType(DWORD dwAddrMask);
Paramètres
dwAddrMask
[in] Combinaison de bits (OR) d’indicateurs qui spécifie les types d’adresses que le contrôle d’adresse réseau peut prendre en charge. Pour plus d’informations, consultez NET_STRING.
Valeur de retour
S_OK si cette méthode réussit ; sinon, un code d’erreur COM.
Notes
Utilisez la méthode CNetAddressCtrl ::SetAllowType pour spécifier les types d’adresses que le contrôle d’adresse réseau actuel peut prendre en charge. Utilisez la méthode CNetAddressCtrl ::GetAddress pour valider et analyser l’adresse réseau que l’utilisateur entre. Utilisez la méthode CNetAddressCtrl ::D isplayErrorTip pour afficher une info-bulle de message d’erreur si la méthode CNetAddressCtrl ::GetAddress échoue.
Ce message appelle la macro NetAddr_SetAllowType , qui est décrite dans le Kit de développement logiciel (SDK) Windows. Cette macro envoie le message NCM_SETALLOWTYPE.
Voir aussi
CNetAddressCtrl, classe
Graphique hiérarchique
CEdit, classe