Compartir a través de


Clase CPaneDivider

Para obtener información más detallada, consulta el código fuente que se ubica en la carpeta VC\atlmfc\src\mfc de la instalación de Visual Studio.

La clase CPaneDivider divide dos paneles o dos grupos de paneles, o separa un grupo de paneles del área cliente de la ventana del marco principal.

Sintaxis

class CPaneDivider : public CBasePane

Miembros

Constructores públicos

Nombre Descripción
CPaneDivider::CPaneDivider

Métodos públicos

Nombre Descripción
CPaneDivider::AddPaneContainer
CPaneDivider::AddPane
CPaneDivider::AddRecentPane
CPaneDivider::CalcExpectedDockedRect
CPaneDivider::CalcFixedLayout (Invalida CBasePane::CalcFixedLayout).
CPaneDivider::CheckVisibility
CPaneDivider::CreateEx (Invalida CBasePane::CreateEx.)
CPaneDivider::DoesAllowDynInsertBefore (Invalida CBasePane::DoesAllowDynInsertBefore.)
CPaneDivider::DoesContainFloatingPane
CPaneDivider::FindPaneContainer
CPaneDivider::FindTabbedPane
CPaneDivider::GetDefaultWidth
CPaneDivider::GetFirstPane
CPaneDivider::GetPaneDividers Devuelve la lista de divisores de panel que residen en la clase CPaneContainer. Solo se debe llamar a este método para los divisores de panel predeterminados.
CPaneDivider::GetPaneDividerStyle
CPaneDivider::GetPanes Devuelve la lista de paneles que residen en la clase CPaneContainer. Solo se debe llamar a este método para los divisores de panel predeterminados.
CPaneDivider::GetRootContainerRect
CPaneDivider::GetWidth
CPaneDivider::Init
CPaneDivider::InsertPane
CPaneDivider::IsAutoHideMode (Invalida CBasePane::IsAutoHideMode.)
CPaneDivider::IsDefault
CPaneDivider::IsHorizontal (Invalida CBasePane::IsHorizontal.)
CPaneDivider::Move
CPaneDivider::NotifyAboutRelease
CPaneDivider::OnShowPane
CPaneDivider::ReleaseEmptyPaneContainers
CPaneDivider::RemovePane
CPaneDivider::ReplacePane
CPaneDivider::RepositionPanes
CPaneDivider::Serialize (Invalida CBasePane::Serialize).
CPaneDivider::SetAutoHideMode
CPaneDivider::SetPaneContainerManager
CPaneDivider::ShowWindow
CPaneDivider::StoreRecentDockSiteInfo
CPaneDivider::StoreRecentTabRelatedInfo
Nombre Descripción
CPaneDivider::m_nDefaultWidth Especifica el ancho predeterminado en píxeles de todos los divisores de panel en la aplicación.
CPaneDivider::m_pSliderRTC Contiene un puntero para la información de la clase en runtime sobre un objeto derivado de CPaneDivider.

Comentarios

El marco crea objetos de CPaneDivider automáticamente cuando se acopla un panel.

Hay dos tipos de divisores de panel:

  • se crea un divisor de panel predeterminado cuando se acopla un grupo de paneles a un lado de la ventana de marco principal. El divisor de panel predeterminado contiene un puntero para la clase CPaneContainerManager y redirige la mayoría de las operaciones en el grupo de paneles (como cambiar el tamaño de un panel o acoplar otro panel o contenedor) al administrador de contenedores. Cada panel de acoplamiento mantiene un puntero para su divisor de panel predeterminado.

  • Un divisor de panel normal solo divide dos paneles en un contenedor. Para obtener más información, consulte clase CPaneContainer.

Ejemplo

En el siguiente ejemplo se muestra cómo obtener un objeto CPaneDivider desde un objeto CWorkspaceBar. Este fragmento de código forma parte de la muestra de demo de pestañas de MDI.

// CWorkspaceBar m_wndWorkSpace
CPaneDivider *pSlider = m_wndWorkSpace.GetDefaultPaneDivider();

Jerarquía de herencia

CObject
CCmdTarget
 └ CWnd
  └ CBasePane
   └ CPaneDivider

Requisitos

Encabezado: afxPaneDivider.h

CPaneDivider::SetAutoHideMode

void SetAutoHideMode(BOOL bMode);

Parámetros

[in] bMode

Comentarios

CPaneDivider::SetPaneContainerManager

void SetPaneContainerManager(CPaneContainerManager* p);

Parámetros

[in] p

Comentarios

CPaneDivider::AddPane

virtual void AddPane(CDockablePane* pBar);

Parámetros

[in] pBar

Comentarios

CPaneDivider::AddPaneContainer

virtual BOOL AddPaneContainer(
    CPaneContainerManager& barContainerManager,
    BOOL bOuterEdge);

virtual BOOL AddPaneContainer(
    CDockablePane* pTargetBar,
    CPaneContainerManager& barContainerManager,
    DWORD dwAlignment);

Parámetros

[in] barContainerManager
[in] bOuterEdge
[in] pTargetBar
[in] dwAlignment

Valor devuelto

Comentarios

CPaneDivider::AddRecentPane

virtual CDockablePane* AddRecentPane(CDockablePane* pBar);

Parámetros

[in] pBar

Valor devuelto

Comentarios

CPaneDivider::CalcExpectedDockedRect

virtual void CalcExpectedDockedRect(
    CWnd* pWndToDock,
    CPoint ptMouse,
    CRect& rectResult,
    BOOL& bDrawTab,
    CDockablePane** ppTargetBar);

Parámetros

[in] pWndTodock
[in] ptMouse
[in] rectResult
[in] bDrawTab
[in] ppTargetBar

Comentarios

CPaneDivider::CalcFixedLayout

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

Parámetros

[in] bStretch
[in] bHorz

Valor devuelto

Comentarios

CPaneDivider::CheckVisibility

virtual BOOL CheckVisibility();

Valor devuelto

Comentarios

CPaneDivider::CPaneDivider

CPaneDivider();

CPaneDivider(
    BOOL bDefaultSlider,
    CWnd* pParent = NULL);

Parámetros

[in] bDefaultSlider
[in] pParent

Valor devuelto

Comentarios

CPaneDivider::CreateEx

virtual BOOL CreateEx(
    DWORD dwStyleEx,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID,
    CCreateContext* pContext);

Parámetros

[in] dwStyleEx
[in] dwStyle
[in] rect
[in] pParentWnd
[in] nID
[in] pContext

Valor devuelto

Comentarios

CPaneDivider::DoesAllowDynInsertBefore

virtual BOOL DoesAllowDynInsertBefore() const;

Valor devuelto

Comentarios

CPaneDivider::DoesContainFloatingPane

virtual BOOL DoesContainFloatingPane();

Valor devuelto

Comentarios

CPaneDivider::FindPaneContainer

CPaneContainer* FindPaneContainer(
    CDockablePane* pBar,
    BOOL& bLeftBar);

Parámetros

[in] pBar
[in] bLeftBar

Valor devuelto

Comentarios

CPaneDivider::FindTabbedPane

CDockablePane* FindTabbedPane(UINT nID);

Parámetros

[in] nID

Valor devuelto

Comentarios

CPaneDivider::GetDefaultWidth

static int __stdcall GetDefaultWidth();

Valor devuelto

Comentarios

CPaneDivider::GetFirstPane

const CBasePane* GetFirstPane() const;

Valor devuelto

Comentarios

CPaneDivider::GetPaneDividers

Devuelve la lista de divisores de panel que residen en la clase CPaneContainer. Solo se debe llamar a este método para los divisores de panel predeterminados.

void GetPaneDividers(CObList& lstSliders);

Parámetros

lstSliders
[out] Contiene la lista de divisores de panel que residen en el contenedor de panel.

Comentarios

Solo se debe llamar a este método para los divisores de panel predeterminados. Un divisor de panel predeterminado es un divisor que cambia el tamaño del contenedor de panel completo.

CPaneDivider::GetPaneDividerStyle

DWORD GetPaneDividerStyle() const;

Valor devuelto

Comentarios

CPaneDivider::GetPanes

Devuelve la lista de paneles que residen en la clase CPaneContainer. Solo se debe llamar a este método para recuperar los divisores de panel predeterminados.

void GetPanes(CObList& lstBars);

Parámetros

lstBars
[out] Contiene la lista de paneles que residen en el contenedor de panel.

Comentarios

Solo se debe llamar a este método para los divisores de panel predeterminados. Un divisor de panel predeterminado es un divisor que cambia el tamaño del contenedor de panel completo.

CPaneDivider::GetRootContainerRect

CRect GetRootContainerRect();

Valor devuelto

Comentarios

CPaneDivider::GetWidth

int GetWidth() const;

Valor devuelto

Comentarios

CPaneDivider::Init

void Init(
    BOOL bDefaultSlider = FALSE,
    CWnd* pParent = NULL);

Parámetros

[in] bDefaultSlider
[in] pParent

Comentarios

CPaneDivider::InsertPane

virtual BOOL InsertPane(
    CDockablePane* pBarToInsert,
    CDockablePane* pTargetBar,
    DWORD dwAlignment,
    LPCRECT lpRect = NULL);

Parámetros

[in] pBarToInsert
[in] pTargetBar
[in] dwAlignment
[in] lpRect

Valor devuelto

Comentarios

CPaneDivider::IsAutoHideMode

BOOL IsAutoHideMode() const;

Valor devuelto

Comentarios

CPaneDivider::IsDefault

BOOL IsDefault() const;

Valor devuelto

Comentarios

CPaneDivider::IsHorizontal

BOOL IsHorizontal() const;

Valor devuelto

Comentarios

CPaneDivider::m_nDefaultWidth

Especifica el ancho predeterminado en píxeles de todos los divisores de panel en la aplicación.

AFX_IMPORT_DATA static int m_nDefaultWidth;

CPaneDivider::Move

virtual void Move(
    CPoint& ptOffset,
    BOOL bAdjustLayout = TRUE);

Parámetros

[in] ptOffset
[in] bAdjustLayout

Comentarios

CPaneDivider::m_pSliderRTC

Contiene un puntero para la información de la clase en runtime sobre un objeto derivado de CPaneDivider.

AFX_IMPORT_DATA static CRuntimeClass* m_pSliderRTC;

Comentarios

Establezca esta variable de miembro si crea un divisor de panel personalizado. Esto permite al marco crear el divisor de panel cuando se dibuja el panel.

Ejemplo

En el ejemplo siguiente se muestra cómo establecer la variable del miembro m_pSliderRTC:

class CMySplitter : public CPaneDivider
{
...
};

CPaneDivider::m_pSliderRTC = RUNTIME_CLASS(CMySpliter);

CPaneDivider::NotifyAboutRelease

virtual void NotifyAboutRelease();

Comentarios

CPaneDivider::OnShowPane

virtual void OnShowPane(
    CDockablePane* pBar,
    BOOL bShow);

Parámetros

[in] pBar
[in] bShow

Comentarios

CPaneDivider::ReleaseEmptyPaneContainers

void ReleaseEmptyPaneContainers();

Comentarios

CPaneDivider::RemovePane

virtual void RemovePane(CDockablePane* pBar);

Parámetros

[in] pBar

Comentarios

CPaneDivider::ReplacePane

virtual BOOL ReplacePane(
    CDockablePane* pBarToReplace,
    CDockablePane* pBarToReplaceWith);

Parámetros

[in] pBarToReplace
[in] pBarToReplaceWith

Valor devuelto

Comentarios

CPaneDivider::RepositionPanes

virtual void RepositionPanes(
    CRect& rectNew,
    HDWP& hdwp);

Parámetros

[in] rectNew
[in] hdwp

Comentarios

CPaneDivider::Serialize

void Serialize(CArchive& ar);

Parámetros

[in] ar

Comentarios

CPaneDivider::ShowWindow

void ShowWindow(int nCmdShow);

Parámetros

[in] nCmdShow

Comentarios

CPaneDivider::StoreRecentDockSiteInfo

void StoreRecentDockSiteInfo(CDockablePane* pBar);

Parámetros

[in] pBar

Comentarios

CPaneDivider::StoreRecentTabRelatedInfo

void StoreRecentTabRelatedInfo(
    CDockablePane* pDockingBar,
    CDockablePane* pTabbedBar);

Parámetros

[in] pDockingBar
[in] pTabbedBar

Comentarios

Consulte también

Gráfico de jerarquías
Clases
CPaneContainerManager (clase)
CPaneContainer (clase)
CDockingManager (clase)
CBasePane (clase)