Partilhar via


Classe COleIPFrameWndEx

A classe COleIPFrameWndEx implementa um contêiner OLE que dá suporte a MFC. Você deve derivar a classe de janela de quadro in-loco para seu aplicativo da classe COleIPFrameWndEx, em vez de derivar da classe COleIPFrameWnd. Para obter mais detalhes, confira o código-fonte localizado na pasta VC\atlmfc\src\mfc de sua instalação do Visual Studio.

Sintaxe

class COleIPFrameWndEx : public COleIPFrameWnd

Membros

Métodos públicos

Nome Descrição
COleIPFrameWndEx::AddDockSite
COleIPFrameWndEx::AddPane
COleIPFrameWndEx::AdjustDockingLayout
COleIPFrameWndEx::DockPane
COleIPFrameWndEx::DockPaneLeftOf Encaixa um painel à esquerda de outro painel.
COleIPFrameWndEx::EnableAutoHidePanes
COleIPFrameWndEx::EnableDocking
COleIPFrameWndEx::EnablePaneMenu
COleIPFrameWndEx::GetActivePopup Retorna um ponteiro para o menu de item pop-up exibido no momento.
COleIPFrameWndEx::GetContainerFrameWindow
COleIPFrameWndEx::GetDefaultResId Retorna a ID do recurso da janela de quadro que você especificou quando a janela foi carregada.
COleIPFrameWndEx::GetDockFrame
COleIPFrameWndEx::GetDockingManager
COleIPFrameWndEx::GetMainFrame
COleIPFrameWndEx::GetMenuBar Retorna um ponteiro para o objeto da barra de menus anexado à janela com moldura.
COleIPFrameWndEx::GetPane
COleIPFrameWndEx::GetTearOffBars Retorna uma lista de objetos do painel que estão em um estado de destacável.
COleIPFrameWndEx::GetToolbarButtonToolTipText Chamado pela estrutura antes de a dica de ferramenta para um botão ser exibida.
COleIPFrameWndEx::InsertPane
COleIPFrameWndEx::IsMenuBarAvailable Determina se o ponteiro para o objeto da barra de menus não é NULL.
COleIPFrameWndEx::IsPointNearDockSite
COleIPFrameWndEx::LoadFrame (Substitui COleIPFrameWnd::LoadFrame.)
COleIPFrameWndEx::OnCloseDockingPane
COleIPFrameWndEx::OnCloseMiniFrame
COleIPFrameWndEx::OnClosePopupMenu Chamado pela estrutura quando um menu pop-up ativo processa uma mensagem WM_DESTROY.
COleIPFrameWndEx::OnCmdMsg (Substitui CFrameWnd::OnCmdMsg.)
COleIPFrameWndEx::OnDrawMenuImage Chamado pela estrutura quando a imagem associada a um item de menu é desenhada.
COleIPFrameWndEx::OnDrawMenuLogo Chamado pela estrutura quando um objeto CMFCPopupMenu processa uma mensagem de WM_PAINT.
COleIPFrameWndEx::OnMenuButtonToolHitTest Chamado pela estrutura quando um objeto CMFCToolBarButtonprocessa a mensagem WM_NCHITTEST.
COleIPFrameWndEx::OnMoveMiniFrame
COleIPFrameWndEx::OnSetPreviewMode Chame essa função membro para definir a janela de quadro principal do aplicativo para dentro e fora do modo de visualização de impressão. (Substitui CFrameWnd::OnSetPreviewMode.)
COleIPFrameWndEx::OnShowCustomizePane
COleIPFrameWndEx::OnShowPanes
COleIPFrameWndEx::OnShowPopupMenu Chamado pela estrutura quando um menu pop-up é ativado.
COleIPFrameWndEx::OnTearOffMenu Chamado pela estrutura quando um menu que tem uma barra destacável é ativado.
COleIPFrameWndEx::PaneFromPoint
COleIPFrameWndEx::PreTranslateMessage (Substitui COleIPFrameWnd::PreTranslateMessage.)
COleIPFrameWndEx::RecalcLayout (Substitui COleIPFrameWnd::RecalcLayout.)
COleIPFrameWndEx::RemovePaneFromDockManager
COleIPFrameWndEx::SetDockState Aplica o estado de encaixe especificado aos painéis que pertencem à janela com moldura.
COleIPFrameWndEx::SetupToolbarMenu Modifica um objeto da barra de ferramentas pesquisando itens fictícios e substituindo-os pelos itens definidos pelo usuário especificados.
COleIPFrameWndEx::ShowPane
COleIPFrameWndEx::WinHelpA Chamado pela estrutura para iniciar o aplicativo WinHelp ou a ajuda de contexto.

Métodos protegidos

Nome Descrição
COleIPFrameWndEx::InitUserToobars Diz para a estrutura inicializar um intervalo de IDs de controle atribuídas a barras de ferramentas definidas pelo usuário.

Exemplo

O exemplo a seguir demonstra como subclasse uma instância da classe COleIPFrameWndEx e sobre seus métodos. O exemplo mostra como sobrepor o método OnDestory, o método RepositionFrame, o método RecalcLayout e o método CalcWindowRect. Este snippet de código faz parte do exemplo do Word Pad.

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

Hierarquia de herança

CObject

CCmdTarget

CWnd

CFrameWnd

COleIPFrameWnd

COleIPFrameWndEx

Requisitos

Cabeçalho: afxoleipframewndex.h

COleIPFrameWndEx::AddDockSite

void AddDockSite();

Comentários

COleIPFrameWndEx::AddPane

BOOL AddPane(
    CBasePane* pControlBar,
    BOOL bTail = TRUE);

Parâmetros

[in] pControlBar
[in] bTail

Valor de retorno

Comentários

COleIPFrameWndEx::AdjustDockingLayout

virtual void AdjustDockingLayout(HDWP hdwp = NULL);

Parâmetros

[in] hdwp

Comentários

COleIPFrameWndEx::DockPane

void DockPane(
    CBasePane* pBar,
    UINT nDockBarID = 0,
    LPCRECT lpRect = NULL);

Parâmetros

[in] pBar
[in] nDockBarID
[in] lpRect

Comentários

COleIPFrameWndEx::DockPaneLeftOf

Encaixa um painel à esquerda de outro painel.

BOOL DockPaneLeftOf(
    CPane* pBar,
    CPane* pLeftOf);

Parâmetros

pBar
[in] Um ponteiro para o painel a ser encaixado.

pLeftOf
[in] Um ponteiro para o painel que serve como origem.

Valor de retorno

Retornará TRUE se a operação for bem-sucedida. Caso contrário, retornará FALSE.

Comentários

Chame esse método para encaixar vários objetos de painel em uma ordem predefinida. Esse método encaixa o painel especificado por pBar à esquerda do painel especificado por pLeftOf.

COleIPFrameWndEx::EnableAutoHidePanes

BOOL EnableAutoHidePanes(DWORD dwDockStyle);

Parâmetros

[in] dwDockStyle

Valor de retorno

Comentários

COleIPFrameWndEx::EnableDocking

BOOL EnableDocking(DWORD dwDockStyle);

Parâmetros

[in] dwDockStyle

Valor de retorno

Comentários

COleIPFrameWndEx::EnablePaneMenu

void EnablePaneMenu(
    BOOL bEnable,
    UINT uiCustomizeCmd,
    const CString& strCustomizeLabel,
    UINT uiViewToolbarsMenuEntryID,
    BOOL bContextMenuShowsToolbarsOnly = FALSE,
    BOOL bViewMenuShowsToolbarsOnly = FALSE);

Parâmetros

[in] bEnable
[in] uiCustomizeCmd
[in] strCustomizeLabel
[in] uiViewToolbarsMenuEntryID
[in] bContextMenuShowsToolbarsOnly
[in] bViewMenuShowsToolbarsOnly

Comentários

COleIPFrameWndEx::GetActivePopup

Retorna um ponteiro para o menu de item pop-up exibido no momento.

CMFCPopupMenu* GetActivePopup() const;

Valor de retorno

Um ponteiro para o menu pop-up ativo; caso contrário, NULL.

Comentários

Use esse método para obter um ponteiro para o objeto Classe CMFCPopupMenu exibido no momento.

COleIPFrameWndEx::GetContainerFrameWindow

COleCntrFrameWndEx* GetContainerFrameWindow();

Valor de retorno

Comentários

COleIPFrameWndEx::GetDefaultResId

Retorna a ID do recurso de menu especificada quando a janela com moldura carregou o menu.

UINT GetDefaultResId() const;

Valor de retorno

Retorna a ID do recurso do menu ou 0 se a janela do quadro não tiver nenhuma barra de menus.

Comentários

Chame essa função para recuperar a ID do recurso especificada quando a janela com moldura carregou o recurso de menu chamando COleIPFrameWndEx::LoadFrame.

COleIPFrameWndEx::GetDockFrame

CFrameWnd* GetDockFrame();

Valor de retorno

Comentários

COleIPFrameWndEx::GetDockingManager

CDockingManager* GetDockingManager();

Valor de retorno

Comentários

COleIPFrameWndEx::GetMainFrame

CFrameWnd* GetMainFrame();

Valor de retorno

Comentários

COleIPFrameWndEx::GetMenuBar

Retorna um ponteiro para o objeto da barra de menus anexado à janela com moldura.

const CMFCMenuBar* GetMenuBar() const;

Valor de retorno

Um ponteiro para o objeto da barra de menus.

Comentários

Use essa função para recuperar um ponteiro para o objeto da barra de menus que pertence ao objeto COleIPFrameWndEx.

COleIPFrameWndEx::GetPane

CBasePane* GetPane(UINT nID);

Parâmetros

[in] nID

Valor de retorno

Comentários

COleIPFrameWndEx::GetTearOffBars

Retorna uma lista de objetos do painel que estão em um estado de destacável.

const CObList& GetTearOffBars() const;

Valor de retorno

Uma referência a um objeto CObList que contém uma coleção de ponteiros para os objetos derivados da Classe CBasePane.

Comentários

O objeto COleIPFrameWndEx mantém a coleção de menus de extração como uma lista de objetos derivados da Classe CBasePane. Use esse método para recuperar uma referência a essa lista.

COleIPFrameWndEx::GetToolbarButtonToolTipText

Chamado pela estrutura antes de a dica de ferramenta para um botão ser exibida.

virtual BOOL GetToolbarButtonToolTipText(
    CMFCToolBarButton* pButton,
    CString& strTTText);

Parâmetros

pButton
[in] Ponteiro para o botão.

strTTText
[in] Ponteiro para o texto da dica de ferramenta.

Valor de retorno

A implementação padrão retorna 0.

Comentários

Substitua essa função para personalizar a exibição de dicas de ferramentas nos botões da barra de ferramentas.

COleIPFrameWndEx::InitUserToobars

Especifica um intervalo de IDs de controle que a estrutura atribui às barras de ferramentas definidas pelo usuário.

void InitUserToolbars(
    LPCTSTR lpszRegEntry,
    UINT uiUserToolbarFirst,
    UINT uiUserToolbarLast)

Parâmetros

lpszRegEntry
[in] A entrada do Registro em que a biblioteca armazena as configurações da barra de ferramentas do usuário.

uiUserToolbarFirst
[in] ID de controle atribuída à primeira barra de ferramentas definida pelo usuário.

uiUserToolbarLast
[in] ID de controle atribuída à última barra de ferramentas definida pelo usuário.

Comentários

Use essa função para inicializar um intervalo de IDs de controle para atribuição às barras de ferramentas que os usuários definem dinamicamente. Os parâmetros uiUserToolbarFirst e uiUserToolbarLast definem um intervalo de IDs de controle de barra de ferramentas permitidas. Para desabilitar a criação de barras de ferramentas definidas pelo usuário, defina uiUserToolbarFirst ou uiUserToolbarLast como -1.

COleIPFrameWndEx::InsertPane

BOOL InsertPane(
    CBasePane* pControlBar,
    CBasePane* pTarget,
    BOOL bAfter = TRUE);

Parâmetros

[in] pControlBar
[in] pTarget
[in] bAfter

Valor de retorno

Comentários

COleIPFrameWndEx::IsMenuBarAvailable

Determina se o ponteiro para o objeto da barra de menus não é NULL

BOOL IsMenuBarAvailable() const;

Valor de retorno

Retornará um valor diferente de zero se a janela de quadro tiver uma barra de menus; caso contrário, retornará 0.

Comentários

Chame esse método para determinar se a janela de quadro mantém um ponteiro não NULL para o objeto da barra de menus.

COleIPFrameWndEx::IsPointNearDockSite

BOOL IsPointNearDockSite(
    CPoint point,
    DWORD& dwBarAlignment,
    BOOL& bOuterEdge) const;

Parâmetros

[in] point
[in] dwBarAlignment
[in] bOuterEdge

Valor de retorno

Comentários

COleIPFrameWndEx::LoadFrame

virtual BOOL LoadFrame(
    UINT nIDResource,
    DWORD dwDefaultStyle = WS_OVERLAPPEDWINDOW | FWS_ADDTOTITLE,
    CWnd* pParentWnd = NULL,
    CCreateContext* pContext = NULL);

Parâmetros

[in] nIDResource
[in] dwDefaultStyle
[in] pParentWnd
[in] pContext

Valor de retorno

Comentários

COleIPFrameWndEx::OnCloseDockingPane

virtual BOOL OnCloseDockingPane(CDockablePane*);

Parâmetros

[in] CDockablePane*

Valor de retorno

Comentários

COleIPFrameWndEx::OnCloseMiniFrame

virtual BOOL OnCloseMiniFrame(CPaneFrameWnd*);

Parâmetros

[in] CPaneFrameWnd*

Valor de retorno

Comentários

COleIPFrameWndEx::OnClosePopupMenu

Chamado pela estrutura quando um menu pop-up ativo processa uma mensagem WM_DESTROY.

virtual void OnClosePopupMenu(CMFCPopupMenu* pMenuPopup);

Parâmetros

pMenuPopup
[in] Um ponteiro para o objeto de menu pop-up.

Comentários

Substitua esse método para receber notificações de objetos CMFCPopupMenu quando eles processam mensagens WM_DESTROY.

COleIPFrameWndEx::OnCmdMsg

virtual BOOL OnCmdMsg(
    UINT nID,
    int nCode,
    void* pExtra,
    AFX_CMDHANDLERINFO* pHandlerInfo);

Parâmetros

[in] nID
[in] nCode
[in] pExtra
[in] pHandlerInfo

Valor de retorno

Comentários

COleIPFrameWndEx::OnDrawMenuImage

Chamado pela estrutura quando a imagem associada a um item de menu é desenhada.

virtual BOOL OnDrawMenuImage(
    CDC* pDC,
    const CMFCToolBarMenuButton* pMenuButton,
    const CRect& rectImage);

Parâmetros

pDC
[in] Ponteiro para o contexto do dispositivo.

pMenuButton
[in] Ponteiro para o botão de menu.

rectImage
[in] A imagem associada ao item de menu.

Valor de retorno

A implementação padrão não faz nada e retorna 0.

Comentários

Substitua esse método se você quiser personalizar o desenho de imagem para os itens de menu que pertencem à barra de menus pertencente ao objeto derivado de COleIPFrameWndEx.

Chamado pela estrutura quando um objeto CMFCPopupMenu processa uma mensagem de WM_PAINT.

virtual void OnDrawMenuLogo(
    CDC* pDC,
    CMFCPopupMenu* pMenu,
    const CRect& rectLogo);

Parâmetros

pDC
[in] Ponteiro para o contexto do dispositivo.

pMenu
[in] Ponteiro para o objeto de menu pop-up.

rectLogo
[in] Ponteiro para o logotipo a ser exibido.

Comentários

Substitua esse método para exibir um logotipo no menu pop-up associado à barra de menus de propriedade do objeto derivado de COleIPFrameWndEx. A implementação padrão não tem ação.

COleIPFrameWndEx::OnMenuButtonToolHitTest

Chamado pela estrutura quando um objeto CMFCToolBarButton processa uma mensagem WM_NCHITTEST.

virtual BOOL OnMenuButtonToolHitTest(
    CMFCToolBarButton* pButton,
    TOOLINFO* pTI);

Parâmetros

[in] ponteiro pButton para um botão de menu.

[out] ponteiro pTI para uma estrutura TOOLINFO.

Valor de retorno

A implementação padrão não faz nada e retorna 0. Sua implementação deverá retornar um valor diferente de zero se ela preencher o parâmetro pTI.

Comentários

Substitua esse método para fornecer informações da Dica de Ferramenta sobre um item de menu específico.

COleIPFrameWndEx::OnMoveMiniFrame

virtual BOOL OnMoveMiniFrame(CWnd* pFrame);

Parâmetros

[in] pFrame

Valor de retorno

Comentários

COleIPFrameWndEx::OnSetPreviewMode

virtual void OnSetPreviewMode(
    BOOL bPreview,
    CPrintPreviewState* pState);

Parâmetros

[in] bPreview
[in] pState

Comentários

COleIPFrameWndEx::OnShowCustomizePane

virtual BOOL OnShowCustomizePane(
    CMFCPopupMenu* pMenuPane,
    UINT uiToolbarID);

Parâmetros

[in] pMenuPane
[in] uiToolbarID

Valor de retorno

Comentários

COleIPFrameWndEx::OnShowPanes

virtual BOOL OnShowPanes(BOOL bShow);

Parâmetros

[in] bShow

Valor de retorno

Comentários

COleIPFrameWndEx::OnShowPopupMenu

Chamado pela estrutura quando um menu pop-up é exibido.

virtual BOOL OnShowPopupMenu(CMFCPopupMenu* pMenuPopup);

Parâmetros

pMenuPopup
[in] Ponteiro para o menu pop-up a ser exibido.

Valor de retorno

A implementação padrão não faz nada e retorna um valor diferente de zero. Sua implementação deverá retornar FALSE se o menu pop-up não puder ser exibido.

Comentários

Substitua esse método para personalizar a exibição de um menu pop-up. Por exemplo, você pode alterar os botões de menu para botões de menu de cores ou inicializar barras de desativação.

COleIPFrameWndEx::OnTearOffMenu

Chamado pela estrutura quando o usuário seleciona um menu que tem uma barra de desativação.

virtual BOOL OnTearOffMenu(
    CMFCPopupMenu* pMenuPopup,
    CPane* pBar);

Parâmetros

pMenuPopup
[in] Um ponteiro para o menu pop-up selecionado pelo usuário.

pBar
[in] Um ponteiro para o painel que hospeda o menu.

Valor de retorno

TRUE se você quiser que a estrutura ative o menu pop-up; caso contrário, FALSE. O valor padrão é TRUE.

Comentários

Substitua essa função se você quiser personalizar a configuração da barra de desativação.

COleIPFrameWndEx::PaneFromPoint

CBasePane* PaneFromPoint(
    CPoint point,
    int nSensitivity,
    bool bExactBar,
    CRuntimeClass* pRTCBarType) const;

CBasePane* PaneFromPoint(
    CPoint point,
    int nSensitivity,
    DWORD& dwAlignment,
    CRuntimeClass* pRTCBarType) const;

Parâmetros

[in] point
[in] nSensitivity
[in] bExactBar
[in] pRTCBarType
[in] dwAlignment

Valor de retorno

Comentários

COleIPFrameWndEx::PreTranslateMessage

virtual BOOL PreTranslateMessage(MSG* pMsg);

Parâmetros

[in] pMsg

Valor de retorno

Comentários

COleIPFrameWndEx::RecalcLayout

virtual void RecalcLayout(BOOL bNotify = TRUE);

Parâmetros

[in] bNotify

Comentários

COleIPFrameWndEx::RemovePaneFromDockManager

void RemovePaneFromDockManager(
    CBasePane* pControlBar,
    BOOL bDestroy,
    BOOL bAdjustLayout,
    BOOL bAutoHide,
    CBasePane* pBarReplacement);

Parâmetros

[in] pControlBar
[in] bDestroy
[in] bAdjustLayout
[in] bAutoHide
[in] pBarReplacement

Comentários

COleIPFrameWndEx::SetDockState

Aplica o estado de encaixe especificado a painéis que pertencem à janela com moldura.

void SetDockState(const CDockState& state);

Parâmetros

state
[in] Especifica o estado de encaixe.

Comentários

Use essa função para especificar um novo estado de encaixe para painéis que pertencem ao objeto COleIPFrameWndEx.

COleIPFrameWndEx::SetupToolbarMenu

Modifica um objeto da barra de ferramentas pesquisando itens fictícios e substituindo-os pelos itens definidos pelo usuário especificados.

void SetupToolbarMenu(
    CMenu& menu,
    const UINT uiViewUserToolbarCmdFirst,
    const UINT uiViewUserToolbarCmdLast);

Parâmetros

menu
[in] Uma referência a um objeto CMenu a ser modificado.

uiViewUserToolbarCmdFirst
[in] Especifica o primeiro comando definido pelo usuário.

uiViewUserToolbarCmdLast
[in] Especifica o último comando definido pelo usuário.

Comentários

COleIPFrameWndEx::ShowPane

void ShowPane(
    CBasePane* pBar,
    BOOL bShow,
    BOOL bDelay,
    BOOL bActivate);

Parâmetros

[in] pBar
[in] bShow
[in] bDelay
[in] bActivate

Comentários

COleIPFrameWndEx::WinHelpA

Chamado pela estrutura para iniciar o aplicativo WinHelp ou a ajuda de contexto.

virtual void WinHelp(
    DWORD dwData,
    UINT nCmd = HELP_CONTEXT);

Parâmetros

[in] dwData Especifica dados conforme necessário para o tipo de ajuda especificado pelo nCmd.

nCmd
[in] Especifica o tipo de ajuda solicitada. Para uma lista de valores possíveis e como eles afetam o parâmetro dwData, confira a Função WinHelp no SDK do Windows.

Comentários

Confira também

Gráfico da hierarquia
Classes
Classe CFrameWndEx
Classe CMDIFrameWndEx