Objets window
MFC fournit la classe CWnd pour encapsuler le handle d' HWND d'une fenêtre.L'objet d' CWnd est un objet window C++, distinct du HWND qui représente une fenêtre de windows mais le contenir.Utilisez CWnd pour dériver vos propres classes de fenêtre enfant, ou utilisez une des nombreuses classes MFC dérivées d' CWnd.La classe CWnd est la classe de base pour toutes les fenêtres, y compris les fenêtres frame, des boîtes de dialogue, les fenêtres enfants, les contrôles, et les barres de contrôles telles que les barres d'outils.Une bonne compréhension de la relation entre l'objet window C++ et un HWND est un point crucial pour la programmation efficace avec MFC.
MFC fournit une certaines fonctionnalités et gestion par défaut windows, mais vous pouvez dériver votre propre classe d' CWnd et utiliser ses fonctions membres pour personnaliser la fonctionnalité fournie.Vous pouvez créer des fenêtres enfants en construisant un objet d' CWnd et en appelant sa fonction membre de Create , puis personnaliser les fenêtres enfants à l'aide de les fonctions membres d' CWnd .Vous pouvez inclure des objets dérivés de CView, comme les modes formulaire ou des arborescences, dans une fenêtre frame.Et vous pouvez prendre en charge plusieurs affichages de vos documents via des volets de séparateur, fournies par la classe CSplitterWnd.
Chaque objet dérivé de la classe CWnd contient une table des messages, dans laquelle vous pouvez mapper les messages windows ou des ID de commandes à vos propres gestionnaires.
La documentation générales sur la programmation de windows est une bonne ressource pour apprendre comment utiliser les fonctions membres d' CWnd , qui encapsulent les API d' HWND .
Fonctions pour s'exécuter sur un CWnd
CWnd et son classes de fenêtres dérivées fournissent des constructeurs, des destructeurs, les fonctions membres et pour initialiser l'objet, créent les structures sous-jacentes windows, et accéder à HWNDencapsulé.CWnd fournit également des fonctions membres qui encapsulent des API Windows pour envoyer des messages, accéder à l'état de la fenêtre, convertissant les coordonnées, mise à jour, faites défiler, l'accès au presse-papiers, et bien d'autres tâches.La plupart des API windows management windows qui prennent un argument d' HWND sont encapsulées comme fonctions membres d' CWnd.Les noms de fonctions et de leurs paramètres sont conservés dans la fonction membre d' CWnd .Pour plus d'informations sur les API Windows encapsulé par CWnd, consultez la classe CWnd.
CWnd et messages windows
L'un des objectifs premiers d' CWnd est de fournir une interface pour gérer les messages windows, tels qu' WM_PAINT ou WM_MOUSEMOVE.Plusieurs des fonctions membres d' CWnd sont activées des gestionnaires pour les messages standard — celles qui commencent par l'identificateur afx_msg et le préfixe « », comme OnPaint et OnMouseMove.Messages de couverte parGestion des messages et les mappages et gestion des messages en détail.Les informations qu'il s'appliquent également aux fenêtres et à ceux de l'infrastructure que vous créez vous-même à des fins spécifiques.
Sur quels éléments souhaitez-vous obtenir des informations supplémentaires ?
contextes de périphérique: objets qui rendent dessiner de fenêtres indépendant du périphérique d'unité
objets graphiques: stylets, pinceaux, les polices, bitmap, ainsi, les régions