CFrameWnd, classe
Fournit les fonctionnalités d'une interface monodocument fenêtre frame chevauchée ou contextuelle de (SDI) windows, ainsi que des membres pour gérer la fenêtre.
class CFrameWnd : public CWnd
Membres
Constructeurs publics
Nom |
Description |
---|---|
Construit un objet CFrameWnd. |
Méthodes publiques
Nom |
Description |
---|---|
Rend le frame visible et accessible à l'utilisateur. |
|
Définit la fenêtre frame à modale. |
|
Appelez pour créer et initialiser la fenêtre frame de fenêtre associé à l'objet d' CFrameWnd . |
|
Crée une vue dans un frame qui n'est pas dérivé d' CView. |
|
Ancre une barre de contrôles. |
|
Permet une barre de contrôles à ancrer. |
|
Termine l'état modal de la fenêtre frame. Active toutes les fenêtres désactivées par BeginModalState. |
|
Flotte une barre de contrôles. |
|
Retourne l'objet actif de CDocument . |
|
Retourne l'objet actif d' CFrameWnd . |
|
Retourne l'objet actif d' CView . |
|
Extrait la barre de contrôles. |
|
Récupère l'état d'ancrage d'une fenêtre frame. |
|
Récupère l'état d'affichage du menu de l'application actuelle MFC. |
|
Indique si le comportement par défaut du menu de l'application actuelle MFC est masqué ou visible. |
|
Retourne un pointeur vers la barre d'état appartenant à la fenêtre frame. |
|
Récupère le message correspondant à un ID de commande |
|
Récupère le titre de la barre de contrôles associée. |
|
Provoque la fonction membre d' OnInitialUpdate appartenant à toutes les vues dans la fenêtre frame à appeler. |
|
Retourne une valeur indiquant si une fenêtre frame est dans un état modal. |
|
Détermine si la barre de fractionnement actuel est déplacée. |
|
Appelez pour charger une table d'accélérateurs. |
|
Appelez pour restaurer les paramètres de barres de contrôles. |
|
Appelez pour créer dynamiquement une fenêtre frame des informations sur les ressources. |
|
Négocie l'espace de bordure de la fenêtre frame. |
|
Appelé chaque fois qu'une action est exécutée sur la barre de contrôles spécifiée. |
|
Utilisation de handles SHIFT+F1 pour les éléments sur place. |
|
Définit la fenêtre frame principale de l'application dans et hors de le mode aperçu avant impression. |
|
Appelé par l'infrastructure lorsque le menu associé est mis à jour. |
|
Repositionne les barres de contrôles de l'objet d' CFrameWnd . |
|
Appelez pour enregistrer les paramètres de barres de contrôles. |
|
Indique la vue spécifiée comme étant la vue active pour l'aperçu riche. |
|
Définit l'objet actif d' CView . |
|
Appelez pour ancrer la fenêtre frame dans la fenêtre principale. |
|
Définit l'état d'affichage du menu de l'application actuelle MFC à masqué ou affiche. |
|
Définit le comportement par défaut du menu de l'application actuelle MFC d'être masqué ou visible. |
|
Définit le texte d'une barre d'état standard. |
|
Définit la position actuelle pour la barre de progression Windows 7 affiche dans la barre des tâches. |
|
Définit l'intervalle de la barre de progression Windows 7 affiche dans la barre des tâches. |
|
Définit le type et l'état de l'indicateur de progression affiché sur un bouton de la barre des tâches. |
|
Surchargé. Applique une superposition à un bouton de la barre des tâches pour indiquer l'état de l'application ou une notification à l'utilisateur. |
|
Définit le titre de la barre de contrôles associée. |
|
Appelez pour afficher la barre de contrôles. |
|
Affiche toutes les fenêtres qui sont des descendants de l'objet d' CFrameWnd . |
Méthodes protégées
Nom |
Description |
---|---|
Crée une fenêtre cliente pour le frame. |
|
Appelé avant le menu de l'application actuelle MFC est masqué. |
|
Appelé avant le menu de l'application actuelle MFC s'affiche. |
Données membres publiques
Nom |
Description |
---|---|
Les contrôles automatiques activent et désactivent la fonctionnalité des éléments de menu. |
|
Passez cet CRect statique comme paramètre en créant un objet d' CFrameWnd pour permettre aux fenêtres pour choisir la taille et la position de la fenêtre. |
Notes
Pour créer une fenêtre frame utile pour votre application, dérivez une classe d' CFrameWnd. Ajoutez des variables membres dans la classe dérivée au détail de données de mémoire à votre application. Implémentez les fonctions membres gestionnaires de messages et une table des messages dans la classe dérivée pour spécifier ce qui se produit lorsque les messages sont dirigés vers la fenêtre.
Il existe trois façons de construire une fenêtre frame :
Construisez- directement à l'aide de la Create.
Construisez- directement à l'aide de le LoadFrame.
Construisez- indirectement l'utilisation d'un modèle de document.
Avant d'appeler Créer ou LoadFrame, vous devez construire l'objet de fenêtre frame sur le tas à l'aide de l'opérateur C++ nouveau . Avant d'appeler Créer, vous pouvez également enregistrer une classe de fenêtre avec la fonction globale d' AfxRegisterWndClass pour définir des styles d'icône et de classe pour le frame.
Utilisez la fonction membre de Créer pour passer des paramètres de la création du frame en tant qu'arguments immédiats.
LoadFrame requiert moins d'arguments que Créer, et extrait à la place la plupart de ses valeurs par défaut des ressources, y compris la légende du frame, l'icône, la table d'accélérateurs, et le menu. Pour être accessibles par LoadFrame, toutes ces ressources doivent avoir le même ID de ressource (par exemple, IDR_MAINFRAME).
Lorsqu'un objet d' CFrameWnd contient des vues et des documents, elles sont créées indirectement par l'infrastructure plutôt que directement par le programmeur. l'objet d' CDocTemplate orchestre la création du frame, la création des vues contenantes, et la connexion des vues au document approprié. Les paramètres du constructeur d' CDocTemplate spécifient CRuntimeClass les trois classes impliquées (document, frame, et affichage). Un objet d' CRuntimeClass est utilisé par l'infrastructure pour créer dynamiquement de nouveaux frames une fois spécifié par l'utilisateur (par exemple, en utilisant la nouvelle commande de fichier ou une commande de fenêtre d'interface multidocument (MDI) de la nouvelle).
Une classe de fenêtre frame dérivée d' CFrameWnd doit être déclarée avec DECLARE_DYNCREATE pour que le mécanisme ci-dessus d' RUNTIME_CLASS fonctionne correctement.
CFrameWnd contient des implémentations par défaut pour remplir les fonctions suivantes d'une fenêtre principale d'une application pour Windows classique :
Une fenêtre frame d' CFrameWnd contient la vue active d'un actuel (qui est indépendant de la fenêtre active windows ou du focus d'entrée actuel. Lorsque le frame est réactivé, est averti la vue active en appelant CView::OnActivateView.
Les messages de commande et de nombreux messages courants trames de notification, y compris ceux qui sont gérés par OnSetFocus, OnHScroll, et les fonctions d' OnVScroll d' CWnd, sont délégués par une fenêtre frame d' CFrameWnd actuel - à la vue active.
Actuel de la vue active (ou actuel - la fenêtre frame enfant MDI active dans le cas d'un frame MDI) peut déterminer la légende de la fenêtre frame. Cette fonctionnalité peut être désactivée en désactivant le bit de style de FWS_ADDTOTITLE de la fenêtre frame.
Une fenêtre frame d' CFrameWnd gère la position des barres de contrôles, des vues, et d'autres fenêtres enfants dans la zone cliente de la fenêtre frame. Une fenêtre frame est également mettre à jour lorsque les temps d'inactivité de la barre d'outils et d'autres boutons de la barre de contrôle. Une fenêtre frame d' CFrameWnd a également des implémentations par défaut des commandes pour basculer en activer et de désactiver la barre d'outils et la barre d'état.
Une fenêtre frame d' CFrameWnd gère la barre de menu principal. Lorsqu'un menu contextuel s'affiche, la fenêtre frame utilise le mécanisme d' UPDATE_COMMAND_UI pour déterminer les éléments de menu doivent être activés, désactivés, ou activées. Lorsque l'utilisateur sélectionne un élément de menu, la fenêtre frame met à jour la barre d'état et la chaîne de message pour cette commande.
Une fenêtre frame d' CFrameWnd a une table d'accélérateurs facultative qui convertit automatiquement les accélérateurs de clavier.
Une fenêtre frame d' CFrameWnd a un ID d'aide facultatif défini avec LoadFrame utilisé pour obtenir de l'aide contextuelle. Une fenêtre frame est l'orchestrateur principal des rapports semimodal tels que les modes de l'aide contextuelle (SHIFT+F1) et de l'aperçu avant impression.
Une fenêtre frame d' CFrameWnd ouvre un fichier déplacée du gestionnaire de fichiers et supprimé de la fenêtre frame. Si une extension de fichier est stockée et associée à l'application, la fenêtre frame répond à la requête ouverte de (DDE) échange dynamique de données qui se produit lorsque l'utilisateur ouvre un fichier de données dans le gestionnaire de fichiers ou lorsque la fonction Windows de ShellExecute est appelée.
Si la fenêtre frame est la fenêtre d'application principale (autrement dit, CWinThread::m_pMainWnd), lorsque l'utilisateur ferme l'application, la fenêtre frame invite l'utilisateur à enregistrer tous les documents modifiés (pour OnClose et OnQueryEndSession).
Si la fenêtre frame est la fenêtre d'application principale, la fenêtre frame est le contexte d'exécution WinHelp. La fermeture de la fenêtre frame arrête WINHELP.EXE s'il a été activé pour une assistance pour cette application.
N'utilisez pas l'opérateur C++ supprimer pour détruire une fenêtre frame. Utilisez plutôt CWnd::DestroyWindow. L'implémentation d' CFrameWnd d' PostNcDestroy supprimera l'objet C++ lorsque la fenêtre est détruite. Lorsque l'utilisateur ferme la fenêtre frame, le gestionnaire par défaut d' OnClose appelle DestroyWindow.
Pour plus d'informations sur CFrameWnd, consultez fenêtres frames.
Hiérarchie d'héritage
CFrameWnd
Configuration requise
En-tête : afxwin.h