Definizione di un gestore messaggi per un messaggio riprodotto

Dopo aver creato una nuova classe di controllo MFC, è possibile definirne i gestori. I gestori di messaggi riflessi consentono alla classe di controllo di gestire i propri messaggi prima che il messaggio venga ricevuto dall'elemento padre. È possibile usare la funzione MFC CWnd::SendMessage per inviare messaggi dal controllo a una finestra padre.

Con questa funzionalità è possibile, ad esempio, creare una casella di riepilogo che verrà ridisegnata anziché basarsi sulla finestra padre per farlo (proprietario disegnato). Per altre informazioni sui messaggi riflessi, vedere Gestione dei messaggi riflessi.

Per creare un controllo ActiveX con la stessa funzionalità, è necessario creare un progetto per il controllo ActiveX.

Nota

Non è possibile aggiungere un messaggio riflesso (OCM_Message) per un controllo ActiveX usando la Creazione guidata classe, come descritto di seguito. È necessario aggiungere questi messaggi manualmente.

Per definire un gestore di messaggi per un messaggio riflesso dalla Creazione guidata classi

  1. Aggiungere un controllo, ad esempio un elenco, un controllo rebar, una barra degli strumenti o un controllo albero, al progetto MFC.

  2. In Visualizzazione classi fare clic sul nome della classe del controllo.

  3. Nella Creazione guidata classe il nome della classe di controllo viene visualizzato nell'elenco Nome classe.

  4. Fare clic sulla scheda Messaggi per visualizzare i messaggi di Windows disponibili per l'aggiunta al controllo.

  5. Selezionare il messaggio riflesso per il quale si vuole definire un gestore. I messaggi riflessi sono contrassegnati con un segno di uguale (=).

  6. Fare clic sulla cella nella colonna destra della Creazione guidata classi per visualizzare il nome suggerito del gestore come <add>HandlerName. Ad esempio, il gestore del messaggio =WM_CTLCOLOR suggerisce <l'aggiunta> di CtlColor.

  7. Fare clic sul nome suggerito da accettare. Il gestore viene aggiunto al progetto.

  8. Per modificare o eliminare un gestore di messaggi, ripetere i passaggi da 4 a 7. Fare clic sulla cella contenente il nome del gestore per modificare o eliminare e fare clic sull'attività appropriata.

Vedi anche

Mapping di messaggi a funzioni
Aggiunta di funzionalità con creazioni guidate codice
Aggiunta di una classe
Aggiunta di una funzione membro
Aggiunta di una variabile membro
Override di una funzione virtual
Gestore messaggi MFC
Esplorazione della struttura delle classi