CMFCDesktopAlertWnd, classe
La classe d' CMFCDesktopAlertWnd implémente les fonctionnalités d'une boîte de dialogue non modale qui apparaît sur l'écran informer l'utilisateur sur un événement.
class CMFCDesktopAlertWnd : public CWnd
Membres
Méthodes publiques
Nom |
Description |
---|---|
Crée et initialise la fenêtre d'alerte sur le bureau. |
|
Retourne la vitesse d'animation. |
|
Retourne le type d'animation. |
|
Retourne l'heure de fin automatique. |
|
Retourne la hauteur de la légende. |
|
|
|
Retourne la dernière position valide de la fenêtre d'alerte sur le bureau à l'écran. |
|
Retourne le niveau de transparence. |
|
Détermine si la fenêtre d'alerte sur le bureau est affichée avec la petite légende. |
|
|
|
Appelé par l'infrastructure lorsque l'utilisateur clique sur un bouton de lien situé dans le menu d'alerte sur le bureau. |
|
L'infrastructure appelle cette fonction membre lorsque l'utilisateur sélectionne un élément d'un menu, lorsqu'un contrôle enfant envoie un message de notification, ou lorsqu'une séquence de touches d'accélérateur est traduite. (Substitutions CWnd::OnCommand.) |
|
|
|
|
|
Définit la nouvelle vitesse d'animation. |
|
Définit le type d'animation. |
|
Définit la durée totale automatique fin. |
|
Bascule entre des petites et normales légendes. |
|
Définit le niveau de transparence. |
Notes
Une fenêtre d'alerte sur le bureau peut être transparente, elle peut apparaître avec des effets d'animation, et peut disparaître (après un délai spécifié ou lorsque l'utilisateur éloigne en cliquant sur le bouton Fermer.)
Une fenêtre d'alerte sur le bureau peut également contenir une boîte de dialogue par défaut qui contient une icône, le texte du message (une étiquette), et un lien. Sinon, une fenêtre d'alerte sur le bureau peut contenir une boîte de dialogue personnalisé des ressources de l'application.
Vous créez une fenêtre d'alerte sur le bureau en deux étapes. d'abord, appelez le constructeur pour construire l'objet d' CMFCDesktopAlertWnd . Ensuite, appelez la fonction membre de CMFCDesktopAlertWnd::Create pour créer la fenêtre et pour la liaison à l'objet d' CMFCDesktopAlertWnd .
L'objet d' CMFCDesktopAlertWnd crée une boîte de dialogue enfant spéciale qui remplit la zone cliente de la fenêtre d'alerte sur le bureau. La boîte de dialogue détient tous les contrôles qui sont positionnés sur.
Pour afficher une boîte de dialogue personnalisée de la fenêtre contextuelle, suivez ces étapes :
Dériver une classe de CMFCDesktopAlertDialog.
Créez un modèle de boîte de dialogue enfant dans les ressources.
Appelez CMFCDesktopAlertWnd::Create à l'aide de l'ID de ressource de modèle de boîte de dialogue et d'un pointeur vers des informations de classe d'exécution de la classe dérivée.
Programmez la boîte de dialogue personnalisée pour traiter les notifications provenant de contrôles hébergés, ou programmez les contrôles hébergés pour traiter ces notifications directement.
Utilisez les fonctions suivantes pour contrôler le comportement de la fenêtre d'alerte sur le Bureau :
Définissez le type d'animation en appelant CMFCDesktopAlertWnd::SetAnimationType. Les options valides incluent dévoilent, faites glisser, et si atténuent.
Définissez la vitesse de frame d'animation en appelant CMFCDesktopAlertWnd::SetAnimationSpeed.
Définissez le niveau de transparence en appelant CMFCDesktopAlertWnd::SetTransparency.
Remplacez la taille de la légende par petit en appelant CMFCDesktopAlertWnd::SetSmallCaption. La petite légende est 7 pixels de haut.
Exemple
L'exemple suivant montre comment utiliser différentes méthodes dans la classe d' CMFCDesktopAlertWnd pour configurer un objet d' CMFCDesktopAlertWnd . L'exemple montre comment définir un type d'animation, un fixé la transparence de la fenêtre indépendante, spécifient que la fenêtre signale affiche une petite légende, et définissent le temps qui s'exécute avant la fenêtre signale ferme automatiquement. L'exemple montre également comment créer et initialiser la fenêtre d'alerte sur le bureau. Cet extrait de code fait partie d' Exemple d'alerte de démonstration de Bureau.
CMFCDesktopAlertWnd* pPopup = new CMFCDesktopAlertWnd;
// int m_nAnimation
pPopup->SetAnimationType ((CMFCPopupMenu::ANIMATION_TYPE) m_nAnimation);
// int m_nAnimationSpeed
pPopup->SetAnimationSpeed (m_nAnimationSpeed);
// int m_nTransparency
pPopup->SetTransparency ((BYTE)m_nTransparency);
// BOOL m_bSmallCaption
pPopup->SetSmallCaption (m_bSmallCaption);
// BOOL m_bAutoClose, int m_nAutoCloseTime
pPopup->SetAutoCloseTime (m_bAutoClose ? m_nAutoCloseTime * 1000 : 0);
// int m_nPopupSource
if (m_nPopupSource == 0)
{
// int m_nVisualMngr
// CPoint m_ptPopup
// The this pointer points to a CDesktopAlertDemoDlg class which extends the CDialogEx class.
if (m_nVisualMngr == 5) // MSN-style
{
pPopup->Create (this, IDD_DIALOG2, NULL,
m_ptPopup, RUNTIME_CLASS (CMSNDlg));
}
else
{
pPopup->Create (this, IDD_DIALOG1,
m_menuPopup.GetSubMenu (0)->GetSafeHmenu (),
m_ptPopup, RUNTIME_CLASS (CMyPopupDlg));
}
}
Hiérarchie d'héritage
Configuration requise
en-tête : afxDesktopAlertWnd.h
Voir aussi
Référence
CMFCDesktopAlertWndInfo, classe
CMFCDesktopAlertDialog, classe