一种快速创建 ActiveX 控件,或者任何其他专用控件的方法,是的子类化一个窗口。 有关更多信息,请参见 MFC ActiveX 控件:的 Subclassing 窗口控制。
若要防止控件的容器窗口接收到子类控件发送的 Windows 信息,COleControl 创建“反射器”窗口截获某些 Windows 消息并将其发送回控件。 控件,在其窗口过程中,可以稍后通过采取适当的行动为ActiveX控件处理这些反射消息。
下表显示和反射器截获的消息窗口发送相应的信息。
控件发送的信息 |
消息反映到控件 |
---|---|
OCM_COMMAND |
|
OCM_CTLCOLORBTN |
|
OCM_CTLCOLOREDIT |
|
OCM_CTLCOLORDLG |
|
OCM_CTLCOLORLISTBOX |
|
OCM_CTLCOLORSCROLLBAR |
|
OCM_CTLCOLORSTATIC |
|
OCM_DRAWITEM |
|
OCM_MEASUREITEM |
|
OCM_DELETEITEM |
|
OCM_VKEYTOITEM |
|
OCM_CHARTOITEM |
|
OCM_COMPAREITEM |
|
OCM_HSCROLL |
|
OCM_HSCROLL |
|
OCM_PARENTNOTIFY |
|
OCM_NOTIFY |
备注
如果在 Win32 系统上运行该控件,则它可能接收到 WM_CTLCOLOR* 的若干类型。有关更多信息,请参见 WM_CTLCOLORBTN,WM_CTLCOLORDLG,WM_CTLCOLOREDIT,WM_CTLCOLORLISTBOX,WM_CTLCOLORMSGBOX,WM_CTLCOLORSCROLLBAR,WM_CTLCOLORSTATIC。