次の方法で共有


COleIPFrameWndEx クラス

更新 : 2007 年 11 月

COleIPFrameWndEx クラスは、MFC Feature Pack をサポートする OLE コンテナを実装します。アプリケーションの埋め込み先フレーム ウィンドウ クラスを、COleIPFrameWnd クラスからではなく、COleIPFrameWndEx クラスから派生させる必要があります

class COleIPFrameWndEx : public COleIPFrameWnd

メンバ

パブリック メソッド

名前

説明

COleIPFrameWndEx::AddDockSite

 

COleIPFrameWndEx::AddPane

 

COleIPFrameWndEx::AdjustDockingLayout

 

COleIPFrameWndEx::DockPane

 

COleIPFrameWndEx::DockPaneLeftOf

ペインを別のペインの左側にドッキングします。

COleIPFrameWndEx::EnableAutoHidePanes

 

COleIPFrameWndEx::EnableDocking

 

COleIPFrameWndEx::EnablePaneMenu

 

COleIPFrameWndEx::GetActivePopup

現在表示されているポップアップ メニューへのポインタを返します。

COleIPFrameWndEx::GetContainerFrameWindow

 

COleIPFrameWndEx::GetDefaultResId

フレーム ウィンドウが読み込まれたときにユーザーが指定したウィンドウのリソース ID を返します。

COleIPFrameWndEx::GetDockFrame

 

COleIPFrameWndEx::GetDockingManager

 

COleIPFrameWndEx::GetMainFrame

 

COleIPFrameWndEx::GetMenuBar

フレーム ウィンドウに関連付けられているメニュー バー オブジェクトへのポインタを返します。

COleIPFrameWndEx::GetPane

 

COleIPFrameWndEx::GetTearOffBars

ティアオフ状態になっているペイン オブジェクトのリストを返します。

COleIPFrameWndEx::GetToolbarButtonToolTipText

ボタンのツールヒントを表示する前に、フレームワークによって呼び出されます。

COleIPFrameWndEx::InsertPane

 

COleIPFrameWndEx::IsMenuBarAvailable

メニュー バー オブジェクトへのポインタが NULL でないかどうかを判定します。

COleIPFrameWndEx::IsPointNearDockSite

 

COleIPFrameWndEx::LoadFrame

  (COleIPFrameWnd::LoadFrame をオーバーライドします。)

COleIPFrameWndEx::OnCloseDockingPane

 

COleIPFrameWndEx::OnCloseMiniFrame

 

COleIPFrameWndEx::OnClosePopupMenu

アクティブなポップアップ メニューが WM_DESTROY メッセージを処理すると、フレームワークによって呼び出されます。

COleIPFrameWndEx::OnCmdMsg

  (CFrameWnd::OnCmdMsg をオーバーライドします。)

COleIPFrameWndEx::OnDrawMenuImage

メニュー項目に関連付けられたイメージが描画されるときに、フレームワークによって呼び出されます。

COleIPFrameWndEx::OnDrawMenuLogo

CMFCPopupMenu オブジェクトが WM_PAINT message メッセージを処理すると、フレームワークによって呼び出されます。

COleIPFrameWndEx::OnMenuButtonToolHitTest

CMFCToolBarButton オブジェクトが WM_NCHITTEST メッセージを処理すると、フレームワークによって呼び出されます。

COleIPFrameWndEx::OnMoveMiniFrame

 

COleIPFrameWndEx::OnSetPreviewMode

アプリケーションのメイン フレーム ウィンドウが印刷プレビュー モードに入るときと、抜けるときに呼び出します。(CFrameWnd::OnSetPreviewMode をオーバーライドします。)

COleIPFrameWndEx::OnShowCustomizePane

 

COleIPFrameWndEx::OnShowPanes

 

COleIPFrameWndEx::OnShowPopupMenu

ポップアップ メニューがアクティブになると、フレームワークによって呼び出されます。

COleIPFrameWndEx::OnTearOffMenu

ティアオフ バーのあるメニューをアクティブにすると、フレームワークによって呼び出されます。

COleIPFrameWndEx::PaneFromPoint

 

COleIPFrameWndEx::PreTranslateMessage

  (COleIPFrameWnd::PreTranslateMessage をオーバーライドします。)

COleIPFrameWndEx::RecalcLayout

  (COleIPFrameWnd::RecalcLayout をオーバーライドします。)

COleIPFrameWndEx::RemovePaneFromDockManager

 

COleIPFrameWndEx::SetDockState

指定したドッキング状態を、フレーム ウィンドウに属するペインに適用します。

COleIPFrameWndEx::SetupToolbarMenu

ダミー項目を検索し、そのダミー項目を、指定されたユーザー定義項目に置き換えることによって、ツール バー オブジェクトを変更します。

COleIPFrameWndEx::ShowPane

 

プロテクト メソッド

名前

説明

COleIPFrameWndEx::InitUserToobars

ユーザー定義のツール バーに割り当てられているコントロール ID の範囲を初期化するよう、フレームワークで定義します。

使用例

COleIPFrameWndEx クラスのインスタンスをサブクラス化して、そのメソッドをオーバーライドする方法を次の例に示します。この例では、OnDestory メソッド、RepositionFrame メソッド、RecalcLayout メソッド、および CalcWindowRect メソッドをオーバーライドする方法を示しています。このコード スニペットは、「WordPad サンプル : MFC ワードパッド アプリケーション」の一部です。

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);
}

継承階層

CObject

   CCmdTarget

      CWnd

         CFrameWnd

            COleIPFrameWnd

               COleIPFrameWndEx

必要条件

ヘッダー : afxoleipframewndex.h

参照

概念

MFC 階層図

参照

CFrameWndEx クラス

CMDIFrameWndEx クラス

その他の技術情報

クラス (MFC Feature Pack)