CDockablePane
(clase)
Implementa un panel que se puede acoplar en un sitio de acoplamiento o incluirlo en un panel con pestañas.
Sintaxis
class CDockablePane : public CPane
Miembros
Constructores públicos
Nombre | Descripción |
---|---|
CDockablePane::CDockablePane |
Construye e inicializa un objeto CDockablePane . |
Métodos públicos
Nombre | Descripción |
---|---|
CDockablePane::AttachToTabWnd |
Asocia un panel a otro panel. Esto crea un panel con pestañas. |
CDockablePane::CalcFixedLayout |
Devuelve el tamaño del rectángulo del panel. |
CDockablePane::CanAcceptMiniFrame |
Determina si el mini fotograma especificado se puede acoplar al panel. |
CDockablePane::CanAcceptPane |
Determina si otro panel se puede acoplar al panel actual. |
CDockablePane::CanAutoHide |
Determina si el panel admite el modo de ocultación automática. (Invalida CBasePane::CanAutoHide ). |
CDockablePane::CanBeAttached |
Determina si el panel actual se puede acoplar a otro panel. |
CDockablePane::ConvertToTabbedDocument |
Convierte uno o varios paneles acoplables en documentos con pestañas MDI. |
CDockablePane::CopyState |
Copia el estado de un panel acoplable. |
CDockablePane::Create |
Crea el control de Windows y lo asocia al objeto CDockablePane . |
CDockablePane::CreateDefaultPaneDivider |
Crea un divisor predeterminado para el panel a medida que se acopla a una ventana de marco. |
CDockablePane::CreateEx |
Crea el control de Windows y lo asocia al objeto CDockablePane . |
CDockablePane::CreateTabbedPane |
Crea un panel con pestañas desde el panel actual. |
CDockablePane::DockPaneContainer |
Acopla un contenedor al panel. |
CDockablePane::DockPaneStandard |
Acopla un panel mediante el acoplamiento de esquema (estándar). |
CDockablePane::DockToFrameWindow |
Se usa internamente. Para acoplar un panel, use CPane::DockPane o CDockablePane::DockToWindow . |
CDockablePane::DockToRecentPos |
Acopla un panel a su posición de acoplamiento reciente almacenada. |
CDockablePane::DockToWindow |
Acopla un panel de acoplamiento a otro panel de acoplamiento. |
CDockablePane::EnableAutohideAll |
Habilita o deshabilita el modo de ocultación automática para este panel junto con otros paneles del contenedor. |
CDockablePane::EnableGripper |
Muestra u oculta el título (agarre). |
CDockablePane::GetAHRestoredRect |
Especifica la posición del panel cuando está visible en modo de ocultación automática. |
CDockablePane::GetAHSlideMode |
Recupera el modo de ocultación automática de diapositivas del panel. |
CDockablePane::GetAutoHideButton |
Se usa internamente. |
CDockablePane::GetAutoHideToolBar |
Se usa internamente. |
CDockablePane::GetCaptionHeight |
Devuelve el alto del título actual. |
CDockablePane::GetDefaultPaneDivider |
Devuelve el divisor de panel predeterminado para el contenedor del panel. |
CDockablePane::GetDockingStatus |
Determina la capacidad de acoplar un panel en función de la ubicación del puntero proporcionada. |
CDockablePane::GetDragSensitivity |
Devuelve la sensibilidad de arrastre de un panel de acoplamiento. |
CDockablePane::GetLastPercentInPaneContainer |
Recupera el porcentaje de espacio que ocupa un panel dentro de su contenedor. |
CDockablePane::GetTabArea |
Recupera el área de pestañas del panel. |
CDockablePane::GetTabbedPaneRTC |
Devuelve la información de clase en tiempo de ejecución sobre una ventana con pestañas que se crea cuando otro panel se acopla al panel actual. |
CDockablePane::HasAutoHideMode |
Especifica si se puede cambiar un panel de acoplamiento al modo de ocultación automática. |
CDockablePane::HitTest |
Especifica la ubicación específica en un panel donde el usuario hace clic en un mouse. |
CDockablePane::IsAccessibilityCompatible |
Se usa internamente. |
CDockablePane::IsAutohideAllEnabled |
Indica si el panel de acoplamiento y todos los demás paneles del contenedor se pueden colocar en modo de ocultación automática. |
CDockablePane::IsAutoHideMode |
Determina si un panel está en modo de ocultación automática. |
CDockablePane::IsChangeState |
Se usa internamente. |
CDockablePane::IsDocked |
Determina si el panel actual está acoplado. |
CDockablePane::IsHideInAutoHideMode |
Determina el comportamiento de un panel que está en modo de ocultación automática si se muestra (u oculta) llamando a ShowPane . |
CDockablePane::IsInFloatingMultiPaneFrameWnd |
Especifica si el panel está en una ventana de marco de varios panel. |
CDockablePane::IsResizable |
Especifica si el panel se puede cambiar de tamaño. |
CDockablePane::IsTabLocationBottom |
Especifica si las pestañas se encuentran en la parte superior o inferior del panel. |
CDockablePane::IsTracked |
Especifica si el usuario arrastra un panel. |
CDockablePane::IsVisible |
Determina si el panel actual está visible. |
CDockablePane::LoadState |
Se usa internamente. |
CDockablePane::OnAfterChangeParent |
Lo llama el marco cuando el elemento primario de un panel ha cambiado. (Invalida CPane::OnAfterChangeParent ). |
CDockablePane::OnAfterDockFromMiniFrame |
Lo llama el marco cuando una barra de acoplamiento flotante se acopla en una ventana de marco. |
CDockablePane::OnBeforeChangeParent |
Lo llama el marco cuando el elemento primario del panel está a punto de cambiar. (Invalida CPane::OnBeforeChangeParent ). |
CDockablePane::OnBeforeFloat |
Lo llama el marco cuando un panel está a punto de flotar. (Invalida CPane::OnBeforeFloat ). |
CDockablePane::RemoveFromDefaultPaneDividier |
El marco llama a este método cuando se desacopla un panel. |
CDockablePane::ReplacePane |
Reemplaza el panel por un panel especificado. |
CDockablePane::RestoreDefaultPaneDivider |
El marco llama a este método como un panel se deserializa para restaurar el divisor de panel predeterminado. |
CDockablePane::SaveState |
Se usa internamente. |
CDockablePane::Serialize |
Serializa el panel. (Invalida CBasePane::Serialize ). |
CDockablePane::SetAutoHideMode |
Alterna el panel de acoplamiento entre el modo visible y de ocultación automática. |
CDockablePane::SetAutoHideParents |
Establece el botón ocultar automáticamente y la barra de herramientas ocultar automáticamente para el panel. |
CDockablePane::SetDefaultPaneDivider |
Se usa internamente. |
CDockablePane::SetLastPercentInPaneContainer |
Establece el porcentaje de espacio que ocupa un panel dentro de su contenedor. |
CDockablePane::SetResizeMode |
Se usa internamente. |
CDockablePane::SetRestoredDefaultPaneDivider |
Establece el divisor de panel predeterminado restaurado. |
CDockablePane::SetTabbedPaneRTC |
Establece la información de clase en tiempo de ejecución de una ventana con pestañas que se crea cuando dos paneles se acoplan juntos. |
CDockablePane::ShowPane |
Muestra u oculta un panel. |
CDockablePane::Slide |
Muestra u oculta un panel con una animación deslizante que solo se muestra cuando el panel está en modo de ocultación automática. |
CDockablePane::ToggleAutoHide |
Alterna el modo de ocultación automática. (Invalida CPane::ToggleAutoHide ). |
CDockablePane::UndockPane |
Desacopla un panel desde la ventana de marco principal o un contenedor de ventanas de miniframe. |
CDockablePane::UnSetAutoHideMode |
Se usa internamente. Para establecer el modo de ocultación automática, use CDockablePane::SetAutoHideMode |
Métodos protegidos
Nombre | Descripción |
---|---|
CDockablePane::CheckAutoHideCondition |
Determina si el panel de acoplamiento está oculto (en modo de ocultación automática). |
CDockablePane::CheckStopSlideCondition |
Determina cuándo se debe detener el deslizamiento de un panel de acoplamiento de ocultación automática. |
CDockablePane::DrawCaption |
Dibuja el título del panel de acoplamiento (agarre). |
CDockablePane::OnPressButtons |
Se llama cuando el usuario presiona un botón de título distinto de los botones AFX_HTCLOSE y AFX_HTMAXBUTTON . |
CDockablePane::OnSlide |
Lo llama el marco para representar el efecto de la diapositiva ocultar automáticamente cuando el panel se muestra u oculta. |
Miembros de datos
Nombre | Descripción |
---|---|
CDockablePane::m_bDisableAnimation |
Especifica si la animación de ocultación automática del panel acoplable está deshabilitada. |
CDockablePane::m_bHideInAutoHideMode |
Determina el comportamiento del panel cuando el panel está en modo de ocultación automática. |
CDockablePane::m_nSlideSteps |
Especifica la velocidad de animación del panel cuando se muestra u oculta cuando está en modo de ocultación automática. |
Observaciones
CDockablePane
implementa la funcionalidad siguiente:
Acoplamiento de un panel a una ventana principal de marco.
Cambiar un panel al modo de ocultación automática.
Adjuntar un panel a una ventana con pestañas.
Flotante de un panel en una ventana de miniframe.
Acoplamiento de un panel a otro panel que está flotante en una ventana de miniframe.
Cambio de tamaño de un panel.
Cargar y guardar el estado de un panel de acoplamiento.
Nota
La información de estado se guarda en el Registro de Windows.
Crear un panel con o sin un título. El título puede tener una etiqueta de texto y se puede rellenar con un color degradado.
Arrastrar un panel al mostrar el contenido del panel
Arrastre un panel mientras muestra un rectángulo de arrastre.
Para usar un panel de acoplamiento en la aplicación, derive la clase de panel de la clase CDockablePane
. Inserte el objeto derivado en el objeto de ventana del marco principal o en un objeto window que controla la instancia del panel. A continuación, llame al método CDockablePane::Create
o al método CDockablePane::CreateEx
cuando procese el mensaje WM_CREATE
en la ventana del marco principal. Por último, configure el objeto de panel llamando a CBasePane::EnableDocking
, CBasePane::DockPane
o CDockablePane::AttachToTabWnd
.
Sugerencias de personalización
Las sugerencias siguientes se aplican a CDockablePane
objetos:
Si llama a
CDockablePane::AttachToTabWnd
para dos paneles no con pestañas acoplables, se devolverá un puntero a una ventana con pestañas en el parámetroppTabbedControlBar
. Puede seguir agregando pestañas a la ventana con pestañas mediante este parámetro.El tipo de panel con pestañas creado por
CDockablePane::AttachToTabWnd
viene determinado por el objetoCDockablePane
en el parámetropTabControlBarAttachTo
. Puede llamar aCDockablePane::SetTabbedPaneRTC
para establecer el tipo de panel con pestañas que creará elCDockablePane
. El tipo predeterminado viene determinado por eldwTabbedStyle
deCDockablePane::Create
cuando se crea por primera vez elCDockablePane
. SidwTabbedStyle
esAFX_CBRS_OUTLOOK_TABS
el tipo predeterminado esCMFCOutlookBar
Clase; sidwTabbedStyle
esAFX_CBRS_REGULAR_TABS
el tipo predeterminado esCTabbedPane
Clase.Si desea acoplar un panel acoplable a otro, llame al método
CDockablePane::DockToWindow
. El panel original debe acoplarse en algún lugar antes de llamar a este método.La variable miembro
CDockablePane::m_bHideInAutoHideMode
controla cómo se comportan los paneles acoplables en modo de ocultación automática cuando se llama aCDockablePane::ShowPane
. Si esta variable miembro está establecida enTRUE
, los paneles acoplables y sus botones ocultar automáticamente se ocultarán. De lo contrario, se deslizarán dentro y fuera.Puede deshabilitar la animación de ocultación automática estableciendo la variable miembro
CDockablePane::m_bDisableAnimation
enTRUE
.
Ejemplo
En el ejemplo siguiente se muestra cómo configurar un objeto CDockablePane
mediante varios métodos de la clase CDockablePane
. En el ejemplo se muestra cómo habilitar la característica ocultar automáticamente todas las características del panel acoplable, habilitar el título o el control, habilitar el modo de ocultación automática, mostrar el panel y animar un panel en modo de ocultación automática. Este fragmento de código forma parte del ejemplo de demostración de Visual Studio.
// GetOwner is an inherited method.
CDockablePane *pParentBar = DYNAMIC_DOWNCAST(CDockablePane, GetOwner());
pParentBar->EnableAutohideAll();
pParentBar->EnableGripper(true);
pParentBar->SetAutoHideMode(true, CBRS_ALIGN_LEFT);
pParentBar->ShowPane(true, false, true);
pParentBar->Slide(true);
Jerarquía de herencia
Requisitos
Encabezado de :afxDockablePane.h
CDockablePane::AttachToTabWnd
Asocia el panel actual a un panel de destino, creando un panel con pestañas.
virtual CDockablePane* AttachToTabWnd(
CDockablePane* pTabControlBarAttachTo,
AFX_DOCK_METHOD dockMethod,
BOOL bSetActive= TRUE,
CDockablePane** ppTabbedControlBar = NULL);
Parámetros
pTabControlBarAttachTo
[dentro, fuera] Especifica el panel de destino al que se adjunta el panel actual. El panel de destino debe ser un panel acoplable.
dockMethod
[in] Especifica el método de acoplamiento.
bSetActive
[in] TRUE
para activar el panel con pestañas después de la operación de asociación; de lo contrario, FALSE
.
ppTabbedControlBar
[out] Contiene el panel con pestañas resultante de la operación de asociación.
Valor devuelto
Puntero al panel actual, si no es un panel con pestañas; de lo contrario, un puntero al panel con pestañas resultante de la operación de asociación. El valor devuelto es NULL
si no se puede adjuntar el panel actual o si se produce un error.
Observaciones
Cuando un panel acoplable se conecta a otro mediante este método, se produce lo siguiente:
El marco comprueba si el panel de destino
pTabControlBarAttachTo
es un panel de acoplamiento normal o si se deriva deCBaseTabbedPane
.Si el panel de destino es un panel con pestañas, el marco le agrega el panel actual como una pestaña.
Si el panel de destino es un panel de acoplamiento normal, el marco crea un panel con pestañas.
El marco llama a
pTabControlBarAttachTo->CreateTabbedPane
. El estilo del nuevo panel con pestañas depende del miembrom_pTabbedControlBarRTC
. De forma predeterminada, este miembro se establece en la clase en tiempo de ejecución deCTabbedPane
. Si pasa el estilo deAFX_CBRS_OUTLOOK_TABS
como parámetrodwTabbedStyle
al métodoCDockablePane::Create
, el objeto de clase en tiempo de ejecución se establece en la clase en tiempo de ejecución deCMFCOutlookBar
. Puede cambiar este miembro en cualquier momento para cambiar el estilo del nuevo panel.Cuando este método crea un panel con pestañas, el marco reemplaza el puntero a
pTabControlBarAttachTo
(si el panel está acoplado o flotante en una ventana de varios miniframes) por un puntero al nuevo panel con pestañas.El marco agrega el panel
pTabControlBarAttachTo
al panel con pestañas como primera pestaña. A continuación, el marco agrega el panel actual como segunda pestaña.
Si el panel actual se deriva de
CBaseTabbedPane
, todas sus pestañas se mueven apTabControlBarAttachTo
y el panel actual se destruye. Por lo tanto, tenga cuidado al llamar a este método, ya que un puntero al panel actual puede no ser válido cuando el método devuelva.
Si asocia un panel a otro al compilar un diseño de acoplamiento, establezca dockMethod
en DM_SHOW
.
Debe acoplar el primer panel antes de adjuntarlo a otro panel.
CDockablePane::CalcFixedLayout
Devuelve el tamaño del rectángulo del panel.
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
Parámetros
bStretch
[in] No se usa.
bHorz
[in] No se usa.
Valor devuelto
Objeto CSize
que contiene el tamaño del rectángulo del panel.
CDockablePane::CanAcceptMiniFrame
Determina si el minicuadre especificado se puede acoplar al panel.
virtual BOOL CanAcceptMiniFrame(CPaneFrameWnd* pMiniFrame) const;
Parámetros
pMiniFrame
[in] Puntero a un objeto CPaneFrameWnd
.
Valor devuelto
TRUE
si pMiniFrame
se pueden acoplar al panel; de lo contrario, FALSE
.
CDockablePane::CanAcceptPane
Determina si otro panel se puede acoplar al panel actual.
virtual BOOL CanAcceptPane(const CBasePane* pBar) const;
Parámetros
pBar
[in] Especifica el panel que se va a acoplar al panel actual.
Valor devuelto
TRUE
si el panel especificado se puede acoplar a este panel; de lo contrario, FALSE
.
Observaciones
El marco llama a este método antes de acoplar un panel al panel actual.
Invalide esta función en una clase derivada para habilitar o deshabilitar la acoplamiento a un panel específico.
De forma predeterminada, este método devuelve TRUE
si pBar
o su elemento primario es de tipo CDockablePane
.
CDockablePane::CanAutoHide
Determina si el panel puede ocultarse automáticamente.
virtual BOOL CanAutoHide() const;
Valor devuelto
TRUE
si el panel puede ocultarse automáticamente; de lo contrario, FALSE
.
Observaciones
CDockablePane::CanAutoHide
devuelve FALSE
en cualquiera de las situaciones siguientes:
El panel no tiene ningún elemento primario.
El administrador de acoplamiento no permite que los paneles se oculten automáticamente.
El panel no está acoplado.
CDockablePane::CanBeAttached
Determina si el panel actual se puede acoplar a otro panel.
virtual BOOL CanBeAttached() const;
Valor devuelto
TRUE
si el panel acoplable se puede acoplar a otro panel o a la ventana de marco principal; de lo contrario, FALSE
.
Observaciones
De forma predeterminada, este método siempre devuelve TRUE
. Invalide este método en una clase derivada para habilitar o deshabilitar la acoplamiento sin llamar a CBasePane::EnableDocking
.
CDockablePane::CDockablePane
Construye e inicializa un objeto CDockablePane
.
CDockablePane();
Observaciones
Después de construir un objeto de panel acoplable, llame a CDockablePane::Create
o CDockablePane::CreateEx
para crearlo.
CDockablePane::ConvertToTabbedDocument
Convierte uno o varios paneles acoplables en documentos con pestañas MDI.
virtual void ConvertToTabbedDocument(BOOL bActiveTabOnly = TRUE);
Parámetros
bActiveTabOnly
[in] Al convertir un CTabbedPane
, especifique TRUE
para convertir solo la pestaña activa. Especifique FALSE
convertir todas las pestañas del panel.
CDockablePane::CheckAutoHideCondition
Determina si el panel de acoplamiento está oculto (también conocido como modo de autohide).
virtual BOOL CheckAutoHideCondition();
Valor devuelto
TRUE
si se cumple la condición ocultar; de lo contrario, FALSE
.
Observaciones
El marco usa un temporizador para comprobar periódicamente si se oculta un panel acoplable de autohide. El método devuelve TRUE
cuando el panel no está activo, el panel no se cambia de tamaño y el puntero del mouse no se encuentra sobre el panel.
Si se cumplen todas las condiciones anteriores, el marco llama a CDockablePane::Slide
para ocultar el panel.
CDockablePane::CheckStopSlideCondition
Determina cuándo un panel de acoplamiento automático debe dejar de deslizarse.
virtual BOOL CheckStopSlideCondition(BOOL bDirection);
Parámetros
bDirection
[in] TRUE
si el panel está visible; FALSE
si el panel está oculto.
Valor devuelto
TRUE
si se cumple la condición de detención; de lo contrario, FALSE
.
Observaciones
Cuando se establece un panel acoplable en modo autohide, el marco usa efectos deslizantes para mostrar u ocultar el panel. El marco llama a esta función cuando el panel se desliza.
CheckStopSlideCondition
devuelve TRUE
cuando el panel está totalmente visible o cuando está totalmente oculto.
Invalide este método en una clase derivada para implementar efectos de autohide personalizados.
CDockablePane::CopyState
Copia el estado de un panel acoplable.
virtual void CopyState(CDockablePane* pOrgBar);
Parámetros
pOrgBar
[in] Puntero a un panel acoplable.
Observaciones
CDockablePane::CopyState
copia el estado de pOrgBar
en el panel actual llamando a los métodos siguientes:
CDockablePane::Create
Crea el control de Windows y lo asocia al objeto CDockablePane
.
virtual BOOL Create(
LPCTSTR lpszCaption,
CWnd* pParentWnd,
const RECT& rect,
BOOL bHasGripper,
UINT nID,
DWORD dwStyle,
DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE,
CCreateContext* pContext = NULL);
virtual BOOL Create(
LPCTSTR lpszWindowName,
CWnd* pParentWnd,
CSize sizeDefault,
BOOL bHasGripper,
UINT nID,
DWORD dwStyle = WS_CHILD|WS_VISIBLE|CBRS_TOP|CBRS_HIDE_INPLACE,
DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE);
Parámetros
lpszCaption
[in] Especifica el nombre de la ventana.
pParentWnd
[dentro, fuera] Especifica la ventana primaria.
rect
[in] Especifica el tamaño y la posición de la ventana, en coordenadas de cliente de pParentWnd
.
bHasGripper
[in] TRUE
para crear el panel con un título; de lo contrario, FALSE
.
nID
[in] Especifica el identificador de la ventana secundaria. Este valor debe ser único si desea guardar el estado de acoplamiento para este panel de acoplamiento.
dwStyle
[in] Especifica los atributos de estilo de ventana.
dwTabbedStyle
[in] Especifica el estilo con pestañas de una ventana con pestañas que se crea cuando el usuario arrastra un panel en el título de este panel.
dwControlBarStyle
[in] Especifica atributos de estilo adicionales.
pContext
[dentro, fuera] Especifica el contexto de creación de la ventana.
lpszWindowName
[in] Especifica el nombre de la ventana.
sizeDefault
[in] Especifica el tamaño de la ventana.
Valor devuelto
TRUE
si el panel acoplable se ha creado correctamente; de lo contrario, FALSE
.
Observaciones
Crea un panel de Windows y lo asocia al objeto CDockablePane
.
Si el estilo de ventana de dwStyle
tiene la marca CBRS_FLOAT_MULTI
, la ventana de miniframe puede flotar con otros paneles en la ventana de miniframe. De forma predeterminada, los paneles de acoplamiento solo pueden flotar individualmente.
Si el parámetro dwTabbedStyle
tiene la marca AFX_CBRS_OUTLOOK_TABS
especificada, el panel crea paneles con pestañas de estilo de Outlook cuando otro panel está asociado a este panel mediante el método CDockablePane::AttachToTabWnd
. De forma predeterminada, los paneles acoplables crean paneles con pestañas normales de tipo CTabbedPane
.
CDockablePane::CreateDefaultPaneDivider
Crea un divisor predeterminado para el panel a medida que se acopla a una ventana de marco.
static CPaneDivider* __stdcall CreateDefaultPaneDivider(
DWORD dwAlignment,
CWnd* pParent,
CRuntimeClass* pSliderRTC = NULL);
Parámetros
dwAlignment
[in] Especifica el lado del marco principal al que se acopla el panel. Si dwAlignment
contiene la marca CBRS_ALIGN_LEFT
o CBRS_ALIGN_RIGHT
, este método crea un divisor vertical (CPaneDivider::SS_VERT
); De lo contrario, este método crea un divisor horizontal (CPaneDivider::SS_HORZ
).
pParent
[in] Puntero al marco primario.
pSliderRTC
[in] No se usa.
Valor devuelto
Este método devuelve un puntero al divisor recién creado o NULL
si se produce un error en la creación del divisor.
Observaciones
dwAlignment
puede ser cualquiera de los siguientes valores:
Valor | Descripción |
---|---|
CBRS_ALIGN_TOP |
El panel se acopla a la parte superior del área cliente de una ventana de marco. |
CBRS_ALIGN_BOTTOM |
El panel se acopla a la parte inferior del área cliente de una ventana de marco. |
CBRS_ALIGN_LEFT |
El panel se acopla al lado izquierdo del área de cliente de una ventana de marco. |
CBRS_ALIGN_RIGHT |
El panel se acopla al lado derecho del área de cliente de una ventana de marco. |
CDockablePane::CreateEx
Crea el control de Windows y lo asocia al objeto CDockablePane
.
virtual BOOL CreateEx(
DWORD dwStyleEx,
LPCTSTR lpszCaption,
CWnd* pParentWnd,
const RECT& rect,
BOOL bHasGripper,
UINT nID,
DWORD dwStyle,
DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE,
CCreateContext* pContext = NULL);
Parámetros
dwStyleEx
[in] Especifica los atributos de estilo extendidos para la nueva ventana.
lpszCaption
[in] Especifica el nombre de la ventana.
pParentWnd
[dentro, fuera] Especifica la ventana primaria.
rect
[in] Especifica el tamaño y la posición de la ventana, en coordenadas de cliente de pParentWnd
.
bHasGripper
[in] TRUE
para crear el panel con un título; de lo contrario, FALSE
.
nID
[in] Especifica el identificador de la ventana secundaria. Este valor debe ser único si desea guardar el estado de acoplamiento para este panel de acoplamiento.
dwStyle
[in] Especifica los atributos de estilo de ventana.
dwTabbedStyle
[in] Especifica el estilo con pestañas de una ventana con pestañas que se crea cuando el usuario arrastra un panel en el título de este panel.
dwControlBarStyle
[in] Especifica los atributos de estilo adicionales.
pContext
[dentro, fuera] Especifica el contexto de creación de la ventana.
Valor devuelto
TRUE
si el panel acoplable se ha creado correctamente; de lo contrario, FALSE
.
Observaciones
Crea un panel de Windows y lo asocia al objeto CDockablePane
.
Si el estilo de ventana de dwStyle
tiene la marca CBRS_FLOAT_MULTI
, la ventana de miniframe puede flotar con otros paneles en la ventana de miniframe. De forma predeterminada, los paneles de acoplamiento solo pueden flotar individualmente.
Si el parámetro dwTabbedStyle
tiene la marca AFX_CBRS_OUTLOOK_TABS
especificada, el panel crea paneles con pestañas de estilo de Outlook cuando otro panel está asociado a este panel mediante el método CDockablePane::AttachToTabWnd
. De forma predeterminada, los paneles acoplables crean paneles con pestañas normales de tipo CTabbedPane
.
CDockablePane::CreateTabbedPane
Crea un panel con pestañas desde el panel actual.
virtual CTabbedPane* CreateTabbedPane();
Valor devuelto
El nuevo panel con pestañas o NULL
si se produjo un error en la operación de creación.
Observaciones
El marco llama a este método cuando crea un panel con pestañas para reemplazar este panel. Para obtener más información, consulte CDockablePane::AttachToTabWnd
.
Invalide este método en una clase derivada para personalizar cómo se crean e inicializan los paneles con pestañas.
El panel con pestañas se crea según la información de clase en tiempo de ejecución almacenada en el miembro m_pTabbedControlBarRTC
, que se inicializa mediante el método CDockablePane::CreateEx
.
CDockablePane::DockPaneContainer
Acopla un contenedor al panel.
virtual BOOL DockPaneContainer(
CPaneContainerManager& barContainerManager,
DWORD dwAlignment,
AFX_DOCK_METHOD dockMethod);
Parámetros
barContainerManager
[in] Referencia al administrador de contenedores del contenedor que se está acoplando.
dwAlignment
[in] DWORD
que especifica el lado del panel al que se acopla el contenedor.
dockMethod
[in] No se usa.
Valor devuelto
TRUE
si el contenedor se acoplaba correctamente al panel; de lo contrario, FALSE
.
Observaciones
dwAlignment
puede ser cualquiera de los siguientes valores:
Valor | Descripción |
---|---|
CBRS_ALIGN_TOP |
El contenedor se acopla a la parte superior del panel. |
CBRS_ALIGN_BOTTOM |
El contenedor se acopla a la parte inferior del panel. |
CBRS_ALIGN_LEFT |
El contenedor se acopla a la izquierda del panel. |
CBRS_ALIGN_RIGHT |
El contenedor se acopla a la derecha del panel. |
CDockablePane::DockPaneStandard
Acopla un panel mediante el acoplamiento de esquema (estándar).
virtual CPane* DockPaneStandard(BOOL& bWasDocked);
Parámetros
bWasDocked
[in] Cuando el método devuelve, este valor contiene TRUE
si el panel se acoplaba correctamente; de lo contrario, contiene FALSE
.
Valor devuelto
Si el panel se acoplaba a una ventana con pestañas o si se creó una ventana con pestañas como resultado del acoplamiento, este método devuelve un puntero a la ventana con pestañas. Si el panel se acoplaba correctamente, este método devuelve el puntero this
. Si se produjo un error en la acoplamiento, este método devuelve NULL
.
CDockablePane::DockToRecentPos
Acopla un panel a su posición de acoplamiento almacenada.
BOOL CDockablePane::DockToRecentPos();
Valor devuelto
TRUE
si el panel se acopla correctamente; de lo contrario, FALSE
.
Observaciones
Los paneles acoplables almacenan información de acoplamiento reciente en un objeto CRecentDockSiteInfo
.
CDockablePane::DockToWindow
Acopla un panel de acoplamiento a otro panel de acoplamiento.
virtual BOOL DockToWindow(
CDockablePane* pTargetWindow,
DWORD dwAlignment,
LPCRECT lpRect = NULL);
Parámetros
pTargetWindow
[dentro, fuera] Especifica el panel acoplable al que se acopla este panel.
dwAlignment
[in] Especifica la alineación de acoplamiento para el panel. Puede ser uno de CBRS_ALIGN_LEFT
, CBRS_ALIGN_TOP
, CBRS_ALIGN_RIGHT
, CBRS_ALIGN_BOTTOM
o CBRS_ALIGN_ANY
. (Definido en afxres.h
).
lpRect
[in] Especifica el rectángulo de acoplamiento para el panel.
Valor devuelto
TRUE
si el panel se acoplaba correctamente; de lo contrario, FALSE
.
Observaciones
Llame a este método para acoplar un panel a otro con la alineación especificada por dwAlignment
.
CDockablePane::DrawCaption
Dibuja el título (también denominado pinza) de un panel de acoplamiento.
virtual void DrawCaption(
CDC* pDC,
CRect rectCaption);
Parámetros
pDC
[in] Representa el contexto del dispositivo usado para dibujar.
rectCaption
[in] Especifica el rectángulo delimitador del título del panel.
Observaciones
El marco llama a este método para dibujar el título de un panel acoplable.
Invalide este método en una clase derivada para personalizar la apariencia del título.
CDockablePane::EnableAutohideAll
Habilita o deshabilita el modo de autohide para este panel y para otros paneles del contenedor.
void EnableAutohideAll(BOOL bEnable = TRUE);
Parámetros
bEnable
[in] TRUE
para habilitar la característica autohide all para el panel acoplable; de lo contrario, FALSE
.
Observaciones
Cuando un usuario contiene el tecla Ctrl y hace clic en el botón anclar para cambiar un panel al modo de autohide, todos los demás paneles del mismo contenedor también se cambian al modo de autohide.
Llame a este método con bEnable
establecido en FALSE
para deshabilitar esta característica para un panel determinado.
CDockablePane::EnableGripper
Muestra u oculta el título (también denominado pinza).
virtual void EnableGripper(BOOL bEnable);
Parámetros
bEnable
[in] TRUE
para habilitar el título; de lo contrario, FALSE
.
Observaciones
Cuando el marco crea paneles acoplables, no tienen el estilo de ventana de WS_STYLE
, incluso si se especifica. Esto significa que el título del panel es un área no cliente controlada por el marco, pero esta área difiere del título de la ventana estándar.
Puede mostrar u ocultar el título en cualquier momento. El marco oculta el título cuando se agrega un panel como una pestaña a una ventana con pestañas o cuando un panel se flota en una ventana de miniframe.
CDockablePane::GetAHRestoredRect
Especifica la posición del panel cuando está en modo de ocultación automática.
CRect GetAHRestoredRect() const;
Valor devuelto
Objeto CRect
que contiene la posición del panel cuando está en modo de ocultación automática.
Observaciones
CDockablePane::GetAHSlideMode
Recupera el modo de ocultación automática de diapositivas del panel.
virtual UINT GetAHSlideMode() const;
Valor devuelto
Un UINT
que especifica el modo de ocultación automática de diapositivas para el panel. El valor devuelto puede ser AFX_AHSM_MOVE
o AFX_AHSM_STRETCH
, pero la implementación solo usa AFX_AHSM_MOVE
.
Observaciones
CDockablePane::GetCaptionHeight
Devuelve el alto, en píxeles, del título actual.
virtual int GetCaptionHeight() const;
Valor devuelto
Alto del título, en píxeles.
Observaciones
El alto del título es 0 si el método CDockablePane::EnableGripper
oculta el título o si el panel no tiene un título.
CDockablePane::GetDefaultPaneDivider
Devuelve el divisor de panel predeterminado para el contenedor del panel.
CPaneDivider* GetDefaultPaneDivider() const;
Valor devuelto
Un objeto CPaneDivider
válido si el panel acoplable está acoplado a la ventana principal del marco o NULL
si el panel acoplable no está acoplado o si está flotante.
Observaciones
Para obtener más información sobre los divisores de panel, vea CPaneDivider
Clase.
CDockablePane::GetDockingStatus
Determina la capacidad de acoplar un panel en función de la ubicación del puntero proporcionada.
virtual AFX_CS_STATUS GetDockingStatus(
CPoint pt,
int nSensitivity);
Parámetros
pt
[in] Ubicación del puntero en coordenadas de pantalla.
nSensitivity
[in] La distancia, en píxeles, lejos del borde de un rectángulo que el puntero debe ser para habilitar el acoplamiento.
Valor devuelto
Uno de los siguientes valores de estado:
AFX_CS_STATUS valor |
Significado |
---|---|
CS_NOTHING |
El puntero no se encuentra sobre un sitio de acoplamiento. El marco no acopla el panel. |
CS_DOCK_IMMEDIATELY |
El puntero se encuentra sobre el sitio de acoplamiento en modo inmediato (el panel usa el modo de acoplamiento DT_IMMEDIATE ). El marco acopla el panel inmediatamente. |
CS_DELAY_DOCK |
El puntero se encuentra sobre un sitio de acoplamiento que es otro panel de acoplamiento o es un borde del marco principal. El marco acopla el panel después de un retraso. Consulte la sección Comentarios para obtener más información sobre este retraso. |
CS_DELAY_DOCK_TO_TAB |
El puntero se encuentra sobre un sitio de acoplamiento que hace que el panel se acopla en una ventana con pestañas. Esto ocurre cuando el puntero se encuentra sobre el título de otro panel de acoplamiento o sobre el área de tabulación de un panel con pestañas. |
Observaciones
El marco llama a este método para controlar el acoplamiento de un panel flotante.
En el caso de barras de herramientas flotantes o paneles de acoplamiento que usan el modo de acoplamiento de DT_IMMEDIATE
, el marco retrasa el comando dock para permitir que el usuario mueva la ventana fuera del área cliente del marco primario antes de acoplarse. La longitud del retraso se mide en milisegundos y se controla mediante el miembro de datos CDockingManager::m_nTimeOutBeforeToolBarDock
. El valor predeterminado de CDockingManager::m_nTimeOutBeforeToolBarDock
es 200. Este comportamiento emula el comportamiento de acoplamiento de Microsoft Word 2007.
Para los estados de acoplamiento retrasados (CS_DELAY_DOCK
y CS_DELAY_DOCK_TO_TAB
), el marco no realiza la acoplamiento hasta que el usuario libera el botón del mouse. Si un panel usa el modo de acoplamiento de DT_STANDARD
, el marco muestra un rectángulo en la ubicación de acoplamiento proyectada. Si un panel usa el modo de acoplamiento DT_SMART
, el marco muestra marcadores de acoplamiento inteligente y rectángulos semitransparentes en la ubicación de acoplamiento proyectado. Para especificar el modo de acoplamiento para el panel, llame al método CBasePane::SetDockingMode
. Para obtener más información sobre el acoplamiento inteligente, consulte CDockingManager::GetSmartDockingParams
.
CDockablePane::GetDragSensitivity
Devuelve la sensibilidad de arrastre de un panel de acoplamiento.
static const CSize& GetDragSensitivity();
Valor devuelto
Objeto CSize
que contiene el ancho y el alto, en píxeles, de un rectángulo centrado en un punto de arrastre. La operación de arrastre no comienza hasta que el puntero del mouse se mueve fuera de este rectángulo.
CDockablePane::GetLastPercentInPaneContainer
Recupera el porcentaje de espacio que ocupa un panel en su contenedor ( CPaneContainer
Clase).
int GetLastPercentInPaneContainer() const;
Valor devuelto
Un int
que especifica el porcentaje de espacio que ocupa el panel en su contenedor.
Observaciones
Este método se usa cuando el contenedor ajusta su diseño.
CDockablePane::GetTabArea
Recupera el área de pestañas del panel.
virtual void GetTabArea(
CRect& rectTabAreaTop,
CRect& rectTabAreaBottom) const;
Parámetros
rectTabAreaTop
[in] GetTabArea
rellena esta variable con el área de tabulación si las pestañas se encuentran en la parte superior del panel. Si las pestañas se encuentran en la parte inferior del panel, esta variable se rellena con un rectángulo vacío.
rectTabAreaBottom
[in] GetTabArea
rellena esta variable con el área de tabulación si las pestañas se encuentran en la parte inferior del panel. Si las pestañas se encuentran en la parte superior del panel, esta variable se rellena con un rectángulo vacío.
Observaciones
Este método solo se usa en clases derivadas de CDockablePane
y que tienen pestañas. Para obtener más información, consulte CTabbedPane::GetTabArea
y CMFCOutlookBar::GetTabArea
.
CDockablePane::GetTabbedPaneRTC
Devuelve la información de clase en tiempo de ejecución sobre una ventana con pestañas que se crea cuando otro panel se acopla al panel actual.
CRuntimeClass* GetTabbedPaneRTC() const;
Valor devuelto
Información de la clase en tiempo de ejecución del panel acoplable.
Observaciones
Llame a este método para recuperar la información de la clase en tiempo de ejecución para los paneles con pestañas que se crean dinámicamente. Esto puede ocurrir cuando un usuario arrastra un panel al título de otro panel, o si llama al método CDockablePane::AttachToTabWnd
para crear mediante programación un panel con pestañas a partir de dos paneles acoplables.
Puede establecer la información de la clase en tiempo de ejecución llamando al método CDockablePane::SetTabbedPaneRTC
.
CDockablePane::HasAutoHideMode
Especifica si se puede cambiar un panel de acoplamiento al modo de autohide.
virtual BOOL HasAutoHideMode() const;
Valor devuelto
TRUE
si el panel acoplable se puede cambiar al modo de autohide; de lo contrario, FALSE
.
Observaciones
Invalide este método en una clase derivada para deshabilitar el modo de autohide para un panel acoplable específico.
CDockablePane::HitTest
Especifica la ubicación en un panel donde el usuario hace clic en un mouse.
virtual int HitTest(
CPoint point,
BOOL bDetectCaption = FALSE);
Parámetros
point
[in] Especifica el punto que se va a probar.
bDetectCaption
[in] TRUE
si se debe devolver HTCAPTION
si el punto está en el título del panel; de lo contrario, FALSE
.
Valor devuelto
Uno de los siguientes valores:
HTNOWHERE
sipoint
no está en el panel acoplable.HTCLIENT
sipoint
está en el área cliente del panel acoplable.HTCAPTION
sipoint
está en el área de título del panel acoplable.AFX_HTCLOSE
sipoint
está en el botón Cerrar.HTMAXBUTTON
sipoint
está en el botón anclar.
CDockablePane::IsAutohideAllEnabled
Indica si el panel de acoplamiento y todos los demás paneles del contenedor se pueden cambiar al modo de autohide.
virtual BOOL IsAutohideAllEnabled() const;
Valor devuelto
TRUE
si el panel acoplable y todos los demás paneles del contenedor se pueden cambiar al modo de autohide; de lo contrario, FALSE
.
Observaciones
Un usuario habilita el modo de autohide haciendo clic en el botón de anclaje de acoplamiento mientras mantiene presionada la tecla Ctrl
Para habilitar o deshabilitar este comportamiento, llame al método CDockablePane::EnableAutohideAll
.
CDockablePane::IsAutoHideMode
Determina si un panel está en modo de autohide.
virtual BOOL IsAutoHideMode() const;
Valor devuelto
TRUE
si el panel acoplable está en modo de autohide; de lo contrario, FALSE
.
CDockablePane::IsDocked
Determina si el panel actual está acoplado.
virtual BOOL IsDocked() const;
Valor devuelto
TRUE
si el panel acoplable no pertenece a una ventana de miniframe o si está flotante en una ventana de miniframe con otro panel.
FALSE
si el panel es un elemento secundario de una ventana de miniframe y no hay otros paneles que pertenezcan a la ventana de miniframe.
Observaciones
Para determinar si el panel está acoplado a la ventana del marco principal, llame a CDockablePane::GetDefaultPaneDivider
. Si el método devuelve un puntero que no es deNULL
, el panel se acopla en la ventana del marco principal.
CDockablePane::IsHideInAutoHideMode
Determina el comportamiento de un panel que está en modo de autohide si se muestra (o está oculto) llamando a CDockablePane::ShowPane
.
virtual BOOL IsHideInAutoHideMode() const;
Valor devuelto
TRUE
si el panel acoplable debe ocultarse cuando está en modo de autohide; de lo contrario, FALSE
.
Observaciones
Cuando un panel acoplable está en modo de autohide, se comporta de forma diferente cuando se llama a ShowPane
para ocultar o mostrar el panel. Este comportamiento se controla mediante el miembro estático CDockablePane::m_bHideInAutoHideMode
. Si este miembro es TRUE
, el panel acoplable y su barra de herramientas de autohide relacionada o el botón de autohide se oculta o se muestra cuando se llama a ShowPane
. De lo contrario, el panel acoplable se activa o desactiva, y su barra de herramientas de autohide relacionada o botón de autohide siempre está visible.
Invalide este método en una clase derivada para cambiar el comportamiento predeterminado de los paneles individuales.
El valor predeterminado de m_bHideInAutoHideMode
es FALSE
.
CDockablePane::IsInFloatingMultiPaneFrameWnd
Especifica si el panel está en una ventana de marco de varios panel ( CMultiPaneFrameWnd Class
).
virtual BOOL IsInFloatingMultiPaneFrameWnd() const;
Valor devuelto
TRUE
si el panel está en una ventana de marco de varios panel; de lo contrario, FALSE
.
Observaciones
CDockablePane::IsResizable
Especifica si el panel se puede cambiar de tamaño.
virtual BOOL IsResizable() const;
Valor devuelto
TRUE
si el panel se puede cambiar de tamaño; de lo contrario, FALSE
.
Observaciones
De forma predeterminada, los paneles acoplables se pueden cambiar de tamaño. Para evitar el cambio de tamaño, invalide este método en una clase derivada y devuelva FALSE
. Tenga en cuenta que un valor de FALSE
conduce a un error ASSERT
en CPane::DockPane
. Use CDockingManager::AddPane
en su lugar para acoplar un panel dentro de un marco primario.
Los paneles que no se pueden cambiar de tamaño no pueden flotar ni entrar en modo de ocultación automática y siempre se encuentran en el borde exterior del marco primario.
CDockablePane::IsTabLocationBottom
Especifica si las pestañas se encuentran en la parte superior o inferior del panel.
virtual BOOL IsTabLocationBottom() const;
Valor devuelto
TRUE
si las pestañas se encuentran en la parte inferior del panel; FALSE
si las pestañas se encuentran en la parte superior del panel.
Observaciones
Para obtener más información, consulte CTabbedPane::IsTabLocationBottom
.
CDockablePane::IsTracked
Especifica si el usuario mueve un panel.
BOOL IsTracked() const;
Valor devuelto
TRUE
si se mueve el panel; de lo contrario, FALSE
.
CDockablePane::IsVisible
Determina si el panel actual está visible.
virtual BOOL IsVisible() const;
Valor devuelto
TRUE
si el panel acoplable está visible; de lo contrario, FALSE
.
Observaciones
Llame a este método para determinar si un panel acoplable está visible. Puede usar este método en lugar de llamar a CWnd::IsWindowVisible
o probar el estilo WS_VISIBLE
. El estado de visibilidad devuelto depende de si el modo de autohide está habilitado o deshabilitado y en el valor de la propiedad CDockablePane::IsHideInAutoHideMode
.
Si el panel acoplable está en modo de autohide y IsHideInAutoHideMode
devuelve FALSE
el estado de visibilidad siempre se FALSE
.
Si el panel acoplable está en modo de autohide y IsHideInAutoHideMode
devuelve TRUE
el estado de visibilidad depende del estado de visibilidad de la barra de herramientas de autohide relacionada.
Si el panel acoplable no está en modo de autohide, el estado de visibilidad viene determinado por el método CBasePane::IsVisible
.
##
CDockablePane::LoadState
Solo para uso interno. Para obtener más información, consulte el código fuente ubicado en la carpeta mfc
de la instalación de Visual Studio. Por ejemplo, %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc
.
virtual BOOL LoadState(
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT) -1
);
CDockablePane::m_bDisableAnimation
Especifica si la animación de autohide del panel acoplable está deshabilitada.
AFX_IMPORT_DATA static BOOL m_bDisableAnimation;
CDockablePane::m_bHideInAutoHideMode
Determina el comportamiento del panel cuando el panel está en modo de autohide.
AFX_IMPORT_DATA static BOOL m_bHideInAutoHideMode;
Observaciones
Este valor afecta a todos los paneles de acoplamiento de la aplicación.
Si establece este miembro en TRUE
, los paneles acoplables se ocultan o se muestran con sus barras de herramientas y botones de autohide relacionados al llamar a CDockablePane::ShowPane
.
Si establece este miembro en FALSE
, los paneles acoplables se activan o desactivan al llamar a CDockablePane::ShowPane
.
CDockablePane::m_nSlideSteps
Especifica la velocidad de animación del panel cuando está en modo de autohide.
AFX_IMPORT_DATA static int m_nSlideSteps;
Observaciones
Para obtener un efecto de animación más rápido, reduzca este valor. Para un efecto de animación más lento, aumente este valor.
CDockablePane::OnAfterChangeParent
Para obtener más información, consulte el código fuente ubicado en la carpeta mfc
de la instalación de Visual Studio. Por ejemplo, %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc
.
virtual void OnAfterChangeParent(CWnd* pWndOldParent);
Parámetros
[in] pWndOldParent
\
Observaciones
CDockablePane::OnAfterDockFromMiniFrame
Lo llama el marco cuando una barra de acoplamiento flotante se acopla en una ventana de marco.
virtual void OnAfterDockFromMiniFrame();
Observaciones
De forma predeterminada, este método no hace nada.
CDockablePane::OnBeforeChangeParent
El marco llama a este método antes de cambiar el elemento primario del panel.
virtual void OnBeforeChangeParent(
CWnd* pWndNewParent,
BOOL bDelay = FALSE);
Parámetros
pWndNewParent
[in] Puntero a la nueva ventana primaria.
bDelay
[in] BOOL que especifica si se debe retrasar la actualización del diseño de acoplamiento si el panel está desacopado. Para obtener más información, consulte CDockablePane::UndockPane
.
Observaciones
Si el panel está acoplado y el nuevo elemento primario no permite acoplar, este método deshace el panel.
Si el panel se convierte en un documento con pestañas, este método almacena su posición de acoplamiento reciente. El marco usa la posición de acoplamiento reciente para restaurar la posición del panel cuando se convierte a un estado acoplado.
CDockablePane::OnBeforeFloat
El marco llama a este método antes de que un panel pase a un estado flotante.
virtual BOOL OnBeforeFloat(
CRect& rectFloat,
AFX_DOCK_METHOD dockMethod);
Parámetros
rectFloat
[in] Especifica la posición y el tamaño del panel cuando se encuentra en un estado flotante.
dockMethod
[in] Especifica el método de acoplamiento. Consulte CPane::DockPane
para obtener una lista de los valores posibles.
Valor devuelto
TRUE
si se puede flotar el panel; de lo contrario, FALSE
.
Observaciones
El marco llama a este método cuando un panel está a punto de flotar. Puede invalidar este método en una clase derivada si desea realizar cualquier procesamiento antes de que el panel flote.
CDockablePane::OnPressButtons
Se llama cuando el usuario presiona un botón de título distinto de los botones AFX_HTCLOSE
y AFX_HTMAXBUTTON
.
virtual void OnPressButtons(UINT nHit);
Parámetros
nHit
[in] Este parámetro no se usa.
Observaciones
Si agrega un botón personalizado al título de un panel acoplable, invalide este método para recibir notificaciones cuando un usuario presiona el botón.
CDockablePane::OnSlide
Lo llama el marco para animar el panel cuando está en modo de autohide.
virtual void OnSlide(BOOL bSlideOut);
Parámetros
bSlideOut
[in] TRUE
para mostrar el panel; FALSE
ocultar el panel.
Observaciones
Invalide este método en una clase derivada para implementar efectos de autohide personalizados.
CDockablePane::RemoveFromDefaultPaneDividier
El marco llama a este método cuando se desacopla un panel.
void RemoveFromDefaultPaneDividier();
Observaciones
Este método establece el divisor de panel predeterminado en NULL
y quita el panel de su contenedor.
CDockablePane::ReplacePane
Reemplaza el panel por un panel especificado.
BOOL ReplacePane(
CDockablePane* pBarToReplaceWith,
AFX_DOCK_METHOD dockMethod,
BOOL bRegisterWithFrame = FALSE);
Parámetros
pBarToReplaceWith
[in] Puntero a un panel acoplable.
dockMethod
[in] No se usa.
bRegisterWithFrame
[in] Si TRUE
, el nuevo panel se registra con el administrador de acoplamiento del elemento primario del panel anterior. El nuevo panel se inserta en el índice del panel anterior en la lista de paneles que mantiene el administrador de acoplamiento.
Valor devuelto
TRUE
si el reemplazo es correcto; de lo contrario, FALSE
.
CDockablePane::RestoreDefaultPaneDivider
Cuando se deserializa un panel, el marco llama a este método para restaurar el divisor de panel predeterminado.
void RestoreDefaultPaneDivider();
Observaciones
El divisor de panel predeterminado restaurado reemplaza al divisor de panel predeterminado actual, si existe.
CDockablePane::SetAutoHideMode
Alterna el panel de acoplamiento entre el modo visible y autohide.
virtual CMFCAutoHideBar* SetAutoHideMode(
BOOL bMode,
DWORD dwAlignment,
CMFCAutoHideBar* pCurrAutoHideBar = NULL,
BOOL bUseTimer = TRUE);
Parámetros
bMode
[in] TRUE
para habilitar el modo de autohide; FALSE
para habilitar el modo de acoplamiento normal.
dwAlignment
[in] Especifica la alineación del panel de autohide que se va a crear.
pCurrAutoHideBar
[dentro, fuera] Puntero a la barra de herramientas de autohide actual. Puede ser NULL
.
bUseTimer
[in] Especifica si se debe usar el efecto de autohide cuando el usuario cambia el panel al modo de autohide o para ocultar el panel inmediatamente.
Valor devuelto
Barra de herramientas de autohide que se creó como resultado de cambiar al modo de autohide o NULL
.
Observaciones
El marco llama a este método cuando un usuario hace clic en el botón anclar para cambiar el panel acoplable al modo de acoplamiento automático o al modo de acoplamiento normal.
Llame a este método para cambiar un panel acoplable al modo de autohide mediante programación. El panel debe acoplarse a la ventana de marco principal ( CDockablePane::GetDefaultPaneDivider
debe devolver un puntero válido al CPaneDivider
).
CDockablePane::SetAutoHideParents
Establece el botón ocultar automáticamente y la barra de herramientas ocultar automáticamente para el panel.
void SetAutoHideParents(
CMFCAutoHideBar* pToolBar,
CMFCAutoHideButton* pBtn);
Parámetros
pToolBar
[in] Puntero a una barra de herramientas de ocultación automática.
pBtn
[in] Puntero a un botón ocultar automáticamente.
CDockablePane::SetLastPercentInPaneContainer
Establece el porcentaje de espacio que ocupa un panel en su contenedor.
void SetLastPercentInPaneContainer(int n);
Parámetros
n
[in] Un int
que especifica el porcentaje de espacio que ocupa el panel en su contenedor.
Observaciones
El marco ajusta el panel para usar el nuevo valor cuando se recalcula el diseño.
CDockablePane::SetRestoredDefaultPaneDivider
Establece el divisor de panel predeterminado restaurado.
void SetRestoredDefaultPaneDivider(HWND hRestoredSlider);
Parámetros
hRestoredSlider
[in] Identificador de un divisor de panel (control deslizante).
Observaciones
Se obtiene un divisor de panel predeterminado restaurado cuando se deserializa un panel. Para obtener más información, consulte CDockablePane::RestoreDefaultPaneDivider
.
CDockablePane::SetTabbedPaneRTC
Establece la información de clase en tiempo de ejecución de una ventana con pestañas que se crea cuando dos paneles se acoplan juntos.
void SetTabbedPaneRTC(CRuntimeClass* pRTC);
Parámetros
pRTC
[in] Información de la clase en tiempo de ejecución del panel con pestañas.
Observaciones
Llame a este método para establecer la información de la clase en tiempo de ejecución para los paneles con pestañas que se crean dinámicamente. Esto puede ocurrir cuando un usuario arrastra un panel al título de otro panel, o si llama al método CDockablePane::AttachToTabWnd
para crear mediante programación un panel con pestañas a partir de dos paneles acoplables.
La clase en tiempo de ejecución predeterminada se establece según el parámetro dwTabbedStyle
de CDockablePane::Create
y CDockablePane::CreateEx
. Para personalizar los paneles con pestañas nuevos, derive la clase de una de las siguientes clases:
CBaseTabbedPane
de claseCTabbedPane
de clase
A continuación, llame a este método con el puntero a su información de clase en tiempo de ejecución.
CDockablePane::ShowPane
Muestra u oculta un panel.
virtual void ShowPane(
BOOL bShow,
BOOL bDelay,
BOOL bActivate);
Parámetros
bShow
[in] TRUE
para mostrar el panel; FALSE
ocultar el panel.
bDelay
[in] TRUE
para retrasar el ajuste del diseño de acoplamiento; FALSE
ajustar el diseño de acoplamiento inmediatamente.
bActivate
[in] TRUE
activar el panel cuando se muestra; de lo contrario, FALSE
.
Observaciones
Llame a este método en lugar del CWnd::ShowWindow
al mostrar u ocultar paneles acoplables.
CDockablePane::Slide
Anima un panel que está en modo de autohide.
virtual void Slide(
BOOL bSlideOut,
BOOL bUseTimer = TRUE);
Parámetros
bSlideOut
[in] TRUE
para mostrar el panel; FALSE
ocultar el panel.
bUseTimer
[in] TRUE
mostrar u ocultar el panel con el efecto de autohide; FALSE
mostrar u ocultar el panel inmediatamente.
Observaciones
El marco llama a este método para animar un panel que está en modo de autohide.
Este método usa el valor CDockablePane::m_nSlideDefaultTimeOut
para determinar el tiempo de espera del efecto de diapositiva. El valor predeterminado del tiempo de espera es 1. Si personaliza el algoritmo de autohide, modifique este miembro para cambiar el tiempo de espera.
CDockablePane::ToggleAutoHide
Alterna el panel entre siempre visible y modo de ocultación automática.
virtual void ToggleAutoHide();
Observaciones
Este método alterna el modo de ocultación automática para el panel llamando a CDockablePane::SetAutoHideMode
.
CDockablePane::UndockPane
Desacopla un panel desde la ventana de marco principal o un contenedor de ventanas de miniframe.
virtual void UndockPane(BOOL bDelay = FALSE);
Parámetros
bDelay
[in] TRUE
para retrasar el cálculo del diseño de acoplamiento; FALSE
volver a calcular el diseño de acoplamiento inmediatamente.
Observaciones
Llame a este método para desacoplar un panel desde la ventana del marco principal o desde un contenedor de ventanas de varios miniframes (un panel flotante en una sola ventana de miniframe con otros paneles).
Debe desacoplar un panel antes de realizar cualquier operación externa que no realice el CDockingManager
. Por ejemplo, debe desacoplar un panel para moverlo mediante programación de una ubicación a otra.
El marco de trabajo deshace automáticamente los paneles antes de que se destruyan.
Consulte también
de gráfico de jerarquía de
CPane
de clase