Partager via


CControlBar::CalcDynamicLayout

l'infrastructure appelle cette fonction membre pour calculer les dimensions d'une barre d'outils dynamique.

virtual CSize CalcDynamicLayout(
   int nLength,
   DWORD nMode 
);

Paramètres

  • nLength
    La dimension demandée de la barre de contrôles, horizontale ou verticale, selon dwMode.

  • nMode
    Les balises suivantes prédéfinies sont utilisées pour déterminer la hauteur et la largeur de la barre de contrôle dynamique.Utilisez au niveau de bits OR (|opérateur) pour combiner les balises.

    Indicateurs de mode de disposition

    Ce que signifie

    LM_STRETCH

    Indique si la barre de contrôles doit être étirée à la taille du frame.Définissez si la barre n'est pas une barre d'ancrage (non disponible pour ancrer).Définissez pas lorsque la barre est ancrée ou flottant (disponible pour ancrer).Si la valeur, LM_STRETCH ignore nLength et retourne les dimensions en fonction de l'état d' LM_HORZ .LM_STRETCH fonctionne de la même façon au paramètre d' bStretch utilisé dans CalcFixedLayout; consultez la fonction membre pour plus d'informations sur la relation entre l'étirement et orientation.

    LM_HORZ

    Indique que la barre horizontale ou verticale est orientée.Définissez si la barre est orientée horizontalement, et si elle est orientée verticalement, il n'est pas définie.LM_HORZ fonctionne de la même façon au paramètre d' bHorz utilisé dans CalcFixedLayout; consultez la fonction membre pour plus d'informations sur la relation entre l'étirement et orientation.

    LM_MRUWIDTH

    Largeur dynamique derniers fichiers utilisés.Ignore le paramètre d' nLength et utilise la largeur derniers fichiers utilisés retrouvée.

    LM_HORZDOCK

    Ancrées dimensions horizontales.Ignore le paramètre d' nLength et retourne la taille dynamique à la plus grande largeur.

    LM_VERTDOCK

    Dimensions ancrées de verticale.Ignore le paramètre d' nLength et retourne la taille dynamique à la plus grande hauteur.

    LM_LENGTHY

    Définissez si nLength indique la hauteur (direction y) au lieu de la largeur.

    LM_COMMIT

    Réinitialise LM_MRUWIDTH à la largeur actuelle de la barre de contrôles flottante.

Valeur de retour

La taille de la barre de contrôle, en pixels, d'un objet de CSize .

Notes

Remplacez cette fonction membre pour fournir votre propre disposition dynamique dans les classes que vous dérivez d' CControlBar.Les classes MFC dérivées d' CControlBar, tel que CToolbar, substituent cette fonction membre et fournissent leur propre implémentation.

Configuration requise

Header: afxext.h

Voir aussi

Référence

Classe de CControlBar

Graphique de la hiérarchie

CControlBar::CalcFixedLayout

Classe de CToolBar