Classe de COleIPFrameWndEx
La classe d' COleIPFrameWndEx implémente un conteneur OLE qui prend en charge MFC.Vous devez dériver la classe de fenêtre frame sur place pour votre application de la classe d' COleIPFrameWndEx, au lieu de la dérivation de la classe d' COleIPFrameWnd.
class COleIPFrameWndEx : public COleIPFrameWnd
Membres
Méthodes publiques
Nom |
Description |
---|---|
|
|
|
|
|
|
|
|
S'ancre un volet gauche d'un autre volet. |
|
|
|
|
|
|
|
Retourne un pointeur vers le menu popup actuellement affiché. |
|
|
|
Retourne l'ID de ressource de la fenêtre frame que vous avez spécifiée lorsque la fenêtre a été chargée. |
|
|
|
|
|
|
|
Retourne un pointeur vers l'objet de barre de menus attaché à la fenêtre frame. |
|
|
|
Retourne une liste d'objets du volet qui sont dans un état d'arrachement. |
|
Appelé par l'infrastructure avant l'info-bulle pour un bouton est affiché. |
|
|
|
Détermine si le pointeur à l'objet de barre de menus n'est pas NULL. |
|
|
|
(Substitutions COleIPFrameWnd::LoadFrame.) |
|
|
|
|
|
Appelé par l'infrastructure lorsqu'un menu contextuel actif traite un message de WM_DESTROY. |
|
(Substitutions CFrameWnd::OnCmdMsg.) |
|
Appelé par l'infrastructure lorsque l'image associée à un élément de menu est dessinée. |
|
Appelé par l'infrastructure lorsqu'un objet d' CMFCPopupMenutraite un message de WM_PAINT. |
|
Appelé par l'infrastructure lorsqu'un objet d' CMFCToolBarButtontraite le message de WM_NCHITTEST. |
|
|
|
Appelez la fonction membre pour définir la fenêtre frame principale de l'application dans et hors de le mode aperçu avant impression.(Substitutions CFrameWnd::OnSetPreviewMode.) |
|
|
|
|
|
Appelé par l'infrastructure lorsqu'un menu contextuel est activé. |
|
Appelé par l'infrastructure lorsqu'un menu qui contient une barre d'arrachement est activé. |
|
|
|
(Substitutions COleIPFrameWnd::PreTranslateMessage.) |
|
(Substitutions COleIPFrameWnd::RecalcLayout.) |
|
|
|
Applique l'état spécifié d'ancrage les volets qui appartiennent à la fenêtre frame. |
|
Modifie un objet barre d'outils en recherchant les éléments fictifs et en les remplaçant par des éléments définis par l'utilisateur spécifié. |
|
|
Méthodes protégées
Nom |
Description |
---|---|
Indique à l'infrastructure d'initialiser une plage des ID de contrôle qui sont assignés à des barres d'outils définies par l'utilisateur. |
Exemple
L'exemple suivant montre comment sous-classer une instance de la classe d' COleIPFrameWndEx et monte plus de ses méthodes.L'exemple montre comment au tour terminé la méthode d' OnDestory, la méthode d' RepositionFrame, la méthode d' RecalcLayout, et la méthode d' CalcWindowRect .Cet extrait de code fait partie d' Exemple de protection de Word.
void CInPlaceFrame::OnDestroy()
{
m_wndToolBar.DestroyWindow();
m_wndFormatBar.DestroyWindow();
COleIPFrameWndEx::OnDestroy();
}
void CInPlaceFrame::RepositionFrame(LPCRECT lpPosRect, LPCRECT lpClipRect)
{
CRect rectNew = lpPosRect;
rectNew.left -= HORZ_TEXTOFFSET;
rectNew.top -= VERT_TEXTOFFSET;
m_wndResizeBar.BringWindowToTop();
COleIPFrameWndEx::RepositionFrame(&rectNew, lpClipRect);
CWnd* pWnd = GetActiveView();
if (pWnd != NULL)
pWnd->BringWindowToTop();
m_wndRulerBar.BringWindowToTop();
}
void CInPlaceFrame::RecalcLayout(BOOL bNotify)
{
if (m_wndResizeBar.m_hWnd != NULL)
m_wndResizeBar.BringWindowToTop();
COleIPFrameWndEx::RecalcLayout(bNotify);
CWnd* pWnd = GetActiveView();
if (pWnd != NULL)
pWnd->BringWindowToTop();
if (m_wndRulerBar.m_hWnd != NULL)
m_wndRulerBar.BringWindowToTop();
// at least 12 pt region plus ruler if it exists
CDisplayIC dc;
CSize size;
size.cy = MulDiv(12, dc.GetDeviceCaps(LOGPIXELSY), 72)+1;
size.cx = dc.GetDeviceCaps(LOGPIXELSX)/4; // 1/4"
size.cx += HORZ_TEXTOFFSET; //adjust for offset
size.cy += VERT_TEXTOFFSET;
if (m_wndRulerBar.m_hWnd != NULL && m_wndRulerBar.IsVisible())
{
CRect rect;
m_wndRulerBar.GetWindowRect(&rect);
size.cy += rect.Height();
}
m_wndResizeBar.SetMinSize(size);
}
void CInPlaceFrame::CalcWindowRect(LPRECT lpClientRect, UINT nAdjustType)
{
COleIPFrameWndEx::CalcWindowRect(lpClientRect, nAdjustType);
}
Hiérarchie d'héritage
Configuration requise
En-tête : afxoleipframewndex.h