CMFCAutoHideBar, classe
CMFCAutoHideBar
est une classe de barre d’outils spéciale qui implémente la fonctionnalité de masquage automatique.
Pour plus d’informations, consultez le code source situé dans le dossier VC\atlmfc\src\mfc de votre installation de Visual Studio.
Syntaxe
class CMFCAutoHideBar : public CPane
Membres
Constructeurs publics
Nom | Description |
---|---|
CMFCAutoHideBar ::CMFCAutoHideBar |
Méthodes publiques
Nom | Description |
---|---|
CMFCAutoHideBar ::AddAutoHideWindow | |
CMFCAutoHideBar ::AllowShowOnPaneMenu | (Substitue CPane::AllowShowOnPaneMenu .) |
CMFCAutoHideBar ::CalcFixedLayout | (Remplacements CBasePane ::CalcFixedLayout.) |
CMFCAutoHideBar ::Create | Crée une barre de contrôle et l’attache à l’objet CPane . (Remplacements CPane ::Create.) |
CMFCAutoHideBar ::GetFirstAHWindow | |
CMFCAutoHideBar ::GetVisibleCount | |
CMFCAutoHideBar ::OnShowControlBarMenu | Appelé par l'infrastructure quand un menu de volet spécial va être affiché. (Remplacements CPane ::OnShowControlBarMenu.) |
CMFCAutoHideBar ::RemoveAutoHideWindow | |
CMFCAutoHideBar ::SetActiveInGroup | (Remplacements CPane ::SetActiveInGroup.) |
CMFCAutoHideBar ::SetRecentVisibleState | |
CMFCAutoHideBar ::ShowAutoHideWindow | |
CMFCAutoHideBar ::StretchPane | Étire un volet sur le plan vertical ou horizontal. (Remplacements CBasePane ::StretchPane.) |
CMFCAutoHideBar ::UnSetAutoHideMode | |
CMFCAutoHideBar ::UpdateVisibleState |
Données membres
Nom | Description |
---|---|
CMFCAutoHideBar ::m_nShowAHWndDelay | Délai entre le moment où l’utilisateur place le curseur de la souris sur une classe CMFCAutoHideButton et le moment où l’infrastructure affiche la fenêtre associée. |
Notes
Quand l'utilisateur passe d'un volet d'ancrage à un mode de masquage automatique, l'infrastructure crée automatiquement un objet CMFCAutoHideBar
. Il crée également les objets CAutoHideDockSite et CMFCAutoHideButton nécessaires. Chaque objet CAutoHideDockSite
est associé à un CMFCAutoHideButton
individuel.
La classe CMFCAutoHideBar
implémente l'affichage d'un CAutoHideDockSite
quand l'utilisateur pointe la souris sur un CMFCAutoHideButton
. Quand la barre d'outils reçoit un message WM_MOUSEMOVE, CMFCAutoHideBar
démarre un minuteur. Celui-ci envoie une notification d'événement WM_TIMER à la barre d'outils à la fin du processus. La barre d'outils traite cet événement en vérifiant si le pointeur de la souris est positionné sur le même bouton de masquage automatique qu'au moment où le minuteur a démarré. Si c'est le cas, le CAutoHideDockSite
attaché s'affiche.
Vous pouvez contrôler le délai du minuteur en définissant m_nShowAHWndDelay
. La valeur par défaut est de 400 ms.
Exemple
L'exemple suivant montre comment construire un objet CMFCAutoHideBar
et utiliser sa méthode GetDockSiteRow
.
CMFCAutoHideBar *pParentBar = new CMFCAutoHideBar();
CDockingPanesRow *pParentRow = pParentBar->GetDockSiteRow();
Hiérarchie d'héritage
Spécifications
En-tête : afxautohidebar.h
CMFCAutoHideBar ::AddAutoHideWindow
Ajoute des fonctionnalités à une fenêtre CDockablePane
, ce qui lui permet de se masquer automatiquement.
CMFCAutoHideButton* AddAutoHideWindow(
CDockablePane* pAutoHideWnd,
DWORD dwAlignment);
Paramètres
pAutoHideWnd
[in] Fenêtre que vous souhaitez masquer.
dwAlignment
[in] Valeur qui spécifie l’alignement du bouton masquer automatiquement avec la fenêtre d’application.
Valeur de retour
Notes
Le paramètre dwAlignment indique où réside le bouton masquer automatiquement dans l’application. Le paramètre peut avoir l’une des valeurs suivantes :
CBRS_ALIGN_LEFT
CBRS_ALIGN_RIGHT
CBRS_ALIGN_TOP
CBRS_ALIGN_BOTTOM
CMFCAutoHideBar ::AllowShowOnPaneMenu
virtual BOOL AllowShowOnPaneMenu() const;
Valeur de retour
Notes
CMFCAutoHideBar ::CalcFixedLayout
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
Paramètres
[in] bStretch
[in] bHorz
Valeur de retour
Notes
CMFCAutoHideBar ::CMFCAutoHideBar
Construit un objet CMFCAutoHideBar.
CMFCAutoHideBar();
Notes
CMFCAutoHideBar ::Create
virtual BOOL Create(
LPCTSTR lpszClassName,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID,
DWORD dwControlBarStyle = AFX_DEFAULT_PANE_STYLE,
CCreateContext* pContext = NULL);
Paramètres
lpszClassName
dwStyle
rect
pParentWnd
nID
dwControlBarStyle
pContext
Valeur de retour
Notes
CMFCAutoHideBar ::GetFirstAHWindow
Retourne un pointeur vers la première fenêtre à masquage automatique de l’application.
CDockablePane* GetFirstAHWindow();
Valeur de retour
La première fenêtre à masquage automatique de l’application, ou NULL si elle n’existe pas.
Notes
CMFCAutoHideBar ::GetVisibleCount
Obtient le nombre de boutons Masquer automatiquement visibles.
int GetVisibleCount();
Valeur de retour
Retourne le nombre de boutons Masquer automatiquement visibles.
Notes
CMFCAutoHideBar ::m_nShowAHWndDelay
Délai entre le moment où l’utilisateur place le curseur de la souris sur une classe CMFCAutoHideButton et le moment où l’infrastructure affiche la fenêtre associée.
int CMFCAutoHideBar::m_nShowAHWndDelay = 400;
Notes
Lorsque l’utilisateur place le curseur de la souris sur un CMFCAutoHideButton
, il y a un léger délai avant que l’infrastructure affiche la fenêtre associée. Ce paramètre détermine la longueur de ce délai en millisecondes.
CMFCAutoHideBar ::OnShowControlBarMenu
virtual BOOL OnShowControlBarMenu(CPoint);
Paramètres
[in] CPoint
Valeur de retour
Notes
CMFCAutoHideBar ::RemoveAutoHideWindow
Supprime et détruit la fenêtre à masquage automatique.
BOOL RemoveAutoHideWindow(CDockablePane* pAutoHideWnd);
Paramètres
CDockablePane* pAutoHideWnd La fenêtre de masquage automatique à supprimer.
Valeur de retour
TRUE en cas de réussite, sinon FALSE.
Notes
CMFCAutoHideBar ::SetActiveInGroup
Marque une barre à masquage automatique comme active.
virtual void SetActiveInGroup(BOOL bActive);
Paramètres
[in] BOOL bActive TRUE à définir sur actif ; sinon FALSE.
Notes
Consultez CPane::SetActiveInGroup.
CMFCAutoHideBar ::SetRecentVisibleState
void SetRecentVisibleState(BOOL bState);
Paramètres
bState
[in] État à définir.
Notes
CMFCAutoHideBar ::ShowAutoHideWindow
Affiche la fenêtre à masquage automatique.
BOOL ShowAutoHideWindow(
CDockablePane* pAutoHideWnd,
BOOL bShow,
BOOL bDelay);
Paramètres
pAutoHideWnd
[in] Fenêtre à afficher.
bShow
[in] TRUE pour afficher la fenêtre.
bDelay
[in] Ce paramètre est ignoré.
Valeur de retour
TRUE en cas de réussite, sinon FALSE.
Notes
CMFCAutoHideBar ::StretchPane
Redimensionne la barre à masquage automatique à son état réduit pour faire tenir l’objet CMFCAutoHideButton
.
virtual CSize StretchPane(
int nLength,
BOOL bVert);
Paramètres
nLength
[in] La valeur n’est pas utilisée dans l’implémentation de base. Dans les implémentations dérivées, utilisez cette valeur pour indiquer la longueur du volet redimensionné.
bVert
[in] La valeur n’est pas utilisée dans l’implémentation de base. Dans les implémentations dérivées, utilisez TRUE pour gérer le cas où la barre de masquage automatique est réduite verticalement et FALSE pour le cas où la barre de masquage automatique est réduite horizontalement.
Valeur de retour
Taille résultante du volet redimensionné.
Notes
Les classes dérivées peuvent substituer cette méthode pour personnaliser le comportement.
CMFCAutoHideBar ::UnSetAutoHideMode
Désactive le mode de masquage automatique pour un groupe de barres avec masquage automatique.
void UnSetAutoHideMode(CDockablePane* pFirstBarInGroup)
Paramètres
[in] pFirstBarInGroup Pointeur vers la première barre de masquage automatique dans le groupe.
Notes
CMFCAutoHideBar ::UpdateVisibleState
Appelé par l’infrastructure quand de la barre à masquage automatique doit être redessinée.
void UpdateVisibleState();
Notes
Voir aussi
Graphique hiérarchique
Classes
CPane, classe
CAutoHideDockSite, classe
CMFCAutoHideButton, classe