Oggetti finestra

MFC fornisce la classe CWnd per incapsulare l'handle HWND di una finestra. L'oggetto CWnd è un oggetto finestra di C++, distinto da HWND che rappresenta una finestra di Windows, ma la prima finestra contiene la seconda. Utilizzare CWnd per derivare le proprie classi di finestre figlie o utilizzare una delle varie classi MFC derivate da CWnd. La classe CWnd è la classe base per tutte le finestre, incluse le finestre cornice, le finestre di dialogo, le finestre figlio, i controlli e le barre di controllo come le barre degli strumenti. Una buona comprensione della relazione tra un oggetto finestra C++ e un HWND è fondamentale per una programmazione efficace con MFC.

MFC fornisce alcune funzionalità predefinite e degli strumenti di gestione predefiniti per le finestre, ma è possibile derivare la propria classe da CWnd e utilizzare le relative funzioni membro per personalizzare la funzionalità fornita. È possibile creare finestre figlio creando un CWnd oggetto e chiamando la relativa funzione membro Create , quindi personalizzare le finestre figlio usando CWnd le funzioni membro. È possibile incorporare oggetti derivati da CView, ad esempio visualizzazioni modulo o viste ad albero, in una finestra cornice. È anche possibile supportare più visualizzazioni dei documenti tramite riquadri splitter, forniti dalla classe CSplitterWnd.

Ogni oggetto derivato dalla classe CWnd contiene una mappa di messaggi, tramite la quale è possibile eseguire il mapping dei messaggi o degli ID di comando di Windows ai propri gestori.

La letteratura generale sulla programmazione per Windows è una valida risorsa per imparare a utilizzare le funzioni membro CWnd, che incapsulano le API HWND.

Funzioni per l'esecuzione in un oggetto CWnd

CWnde le relative classi di finestre derivate forniscono costruttori, distruttori e funzioni membro per inizializzare l'oggetto, creare le strutture di Windows sottostanti e accedere all'oggetto incapsulatoHWND. CWnd fornisce inoltre funzioni membro che incapsulano le API di Windows per inviare messaggi, accedere allo stato della finestra, convertire le coordinate, aggiornare, scorrere, accedere agli Appunti e molte altre attività. La maggior parte delle API di Windows per la gestione delle finestre che accettano un argomento HWND vengono incapsulate come funzioni membro di CWnd. I nomi delle funzioni e dei relativi parametri vengono mantenuti nella funzione membro CWnd. Per informazioni dettagliate sulle API di Windows incapsulate da CWnd, vedere classe CWnd.

CWnd e messaggi di Windows

Uno degli scopi principali di CWnd è fornire un'interfaccia per la gestione dei messaggi di Windows, ad esempio WM_PAINT o WM_MOUedizione Standard MOVE. Molte delle funzioni membro di CWnd sono gestori per i messaggi standard, ovvero quelli che iniziano con l'identificatore afx_msg e il prefisso "On", ad esempio OnPaint e OnMouseMove. La gestione e il mapping dei messaggi illustrano in dettaglio i messaggi e la gestione dei messaggi. Le informazioni dell'argomento sono ugualmente applicabili alle finestre del framework e a quelle create dall'utente per scopi speciali.

Cosa vuoi sapere di più su

Vedi anche

Windows