
La classe CView fournit les fonctionnalités de base pour les classes d'affichage défini par l'utilisateur. Un point de vue est attaché à un document et agit comme un intermédiaire entre le document et l'utilisateur : la vision restitue une image du document sur l'écran ou une imprimante et interprète les entrées de l'utilisateur comme des opérations sur le document.
Un point de vue est un enfant d'une fenêtre frame. Plus d'un point de vue peut partager une fenêtre frame, comme dans le cas d'une fenêtre fractionnée. La relation entre une classe d'affichage, une classe de fenêtre frame et une classe de document est créée par un objet CDocTemplate . Lorsque l'utilisateur ouvre une nouvelle fenêtre ou de fractionner un existant, le cadre construit une nouvelle vue et elle attache au document.
Une vue peut être attachée à un seul document, mais un document peut avoir plusieurs vues, attachés à la fois — par exemple, si le document est affiché dans une fenêtre fractionnée ou dans plusieurs fenêtres enfants dans une application d'interface (multidocument MDI) document multiples. Votre application peut prendre en charge différents types de vues pour un type de document donné ; par exemple, un programme de traitement de texte pourrait fournir une vue complète de texte d'un document et de la vue hiérarchique qui affiche uniquement les rubriques de la section. Ces différents types de vues peuvent être placés dans windows image distincte ou dans des volets distincts d'une fenêtre frame unique si vous utilisez une fenêtre fractionnée.
Une vue peut être responsable de la gestion des différents types d'entrées, comme les entrées au clavier, souris d'entrée ou d'entrée par le biais de glisser-déplacer, ainsi que les commandes de menus, les barres d'outils ou les barres de défilement. Un point de vue reçoit des commandes transmises par sa fenêtre frame. Si l'affichage ne gère pas une commande donnée, il transmet le commandement à son document associé. Comme toutes les cibles de commande, un point de vue gère les messages via une carte message.
La vue est responsable pour afficher et modifier les données du document, mais ne pas pour le stockage. Le document fournit la vue avec les détails nécessaires sur ses données. Vous pouvez laisser l'accès du point de vue directement des membres du document de données, ou vous pouvez fournir des fonctions de membre de la classe de document pour la classe d'affichage appeler.
Lorsque les modifications de données d'un document, la responsable des changements de vue appelle généralement la fonction CDocument::UpdateAllViews pour le document, qui informe tous les autres vues en appelant la fonction membre OnUpdate pour chacun. L'implémentation par défaut de OnUpdate invalide de la zone client toute la vue. Vous pouvez substituer à invalider des régions de la zone client de carte pour les parties modifiées du document.
Pour utiliser la classe CView, dériver une classe et implémentez la fonction de membre OnDraw pour effectuer l'affichage à l'écran. Vous pouvez également utiliser OnDraw pour effectuer l'aperçu avant impression et impression. Le framework gère la boucle d'impression pour l'impression et la prévisualisation de votre document.
Un point de vue gère les messages de la barre de défilement avec les fonctions de membre de CWnd::OnHScroll et CWnd::OnVScroll . Vous pouvez implémenter message de barre de défilement dans ces fonctions, ou vous pouvez utiliser la classe CView dérivé CScrollView pour gérer les défilement pour vous.
CScrollView, la bibliothèque Microsoft Foundation Class fournit en outre des neuf autres classes dérivées de CView:
La classe CView a également une classe d'implémentation dérivée nommée CPreviewView, qui est utilisée par le framework pour effectuer la prévisualisation d'impression. Cette classe fournit un soutien pour les caractéristiques uniques de la fenêtre d'aperçu avant impression, comme une barre d'outils, aperçu de single - ou double-page, et zoom, qui est, agrandissant l'image prévisualisé. Vous ne devez appeler ou substituer des fonctions des membres du CPreviewView, sauf si vous souhaitez implémenter votre propre interface d'impression previewnbsp ; (par exemple, si vous souhaitez soutenir l'édition en mode Aperçu avant impression). Pour plus d'informations sur l'utilisation de CView, voir Sujets d'Architecture Document/vue et d'impression dans le Guide du programmeur Visual C++. En outre, consultez Technical &Note 30 pour plus de détails sur la personnalisation d'aperçu avant impression.
# include lt;afxwin.h>
Membres de la classe |  ; Classe de base | Graphique de la hiérarchie
Échantillons denbsp ; Exemple MFC HELLO | Exemple MFC MDIBIND | MFC exemple MDIDOCVW
Voir aussi  ;CWnd, CFrameWnd, CSplitterWnd, CDC, CDocTemplate, CDocument