Condividi tramite


Classe CPaneDivider

Per altri dettagli, vedere il codice sorgente che si trova nella cartella VC\atlmfc\src\mfc dell'installazione di Visual Studio.

La CPaneDivider classe divide due riquadri, divide due gruppi di riquadri o separa un gruppo di riquadri dall'area client della finestra cornice principale.

Sintassi

class CPaneDivider : public CBasePane

Membri

Costruttori pubblici

Nome Descrizione
CPaneDivider::CPaneDivider

Metodi pubblici

Nome Descrizione
CPaneDivider::AddPaneContainer
CPaneDivider::AddPane
CPaneDivider::AddRecentPane
CPaneDivider::CalcExpectedDockedRect
CPaneDivider::CalcFixedLayout (sostituzioni )CBasePane::CalcFixedLayout.
CPaneDivider::CheckVisibility
CPaneDivider::CreateEx (sostituzioni )CBasePane::CreateEx.
CPaneDivider::D oesAllowDynInsertBefore (sostituzioni )CBasePane::D oesAllowDynInsertBefore.
CPaneDivider::D oesContainFloatingPane
CPaneDivider::FindPaneContainer
CPaneDivider::FindTabbedPane
CPaneDivider::GetDefaultWidth
CPaneDivider::GetFirstPane
CPaneDivider::GetPaneDividers Restituisce l'elenco dei divisori di riquadri che risiedono nella classe CPaneContainer. Questo metodo deve essere chiamato solo per i divisori di riquadri predefiniti.
CPaneDivider::GetPaneDividerStyle
CPaneDivider::GetPanes Restituisce l'elenco di riquadri che risiedono nella classe CPaneContainer. Questo metodo deve essere chiamato solo per i divisori di riquadri predefiniti.
CPaneDivider::GetRootContainerRect
CPaneDivider::GetWidth
CPaneDivider::Init
CPaneDivider::InsertPane
CPaneDivider::IsAutoHideMode (sostituzioni )CBasePane::IsAutoHideMode.
CPaneDivider::IsDefault
CPaneDivider::IsHorizontal (sostituzioni )CBasePane::IsHorizontal.
CPaneDivider::Move
CPaneDivider::NotifyAboutRelease
CPaneDivider::OnShowPane
CPaneDivider::ReleaseEmptyPaneContainers
CPaneDivider::RemovePane
CPaneDivider::ReplacePane
CPaneDivider::RepositionPanes
CPaneDivider::Serialize Esegue l'override di CBasePane::Serialize.
CPaneDivider::SetAutoHideMode
CPaneDivider::SetPaneContainerManager
CPaneDivider::ShowWindow
CPaneDivider::StoreRecentDockSiteInfo
CPaneDivider::StoreRecentTabRelatedInfo
Nome Descrizione
CPaneDivider::m_nDefaultWidth Specifica la larghezza predefinita in pixel di tutti i divisori di riquadri nell'applicazione.
CPaneDivider::m_pSliderRTC Contiene un puntatore alle informazioni sulla classe di runtime relative a un CPaneDivideroggetto derivato da .

Osservazioni:

Il framework crea CPaneDivider automaticamente oggetti quando viene ancorato un riquadro.

Esistono due tipi di divisori di riquadri:

  • Viene creato un divisore di riquadro predefinito quando un gruppo di riquadri è ancorato a un lato della finestra cornice principale. Il divisore del riquadro predefinito contiene un puntatore alla classe CPaneContainerManager e reindirizza la maggior parte delle operazioni sul gruppo di riquadri (ad esempio il ridimensionamento di un riquadro o l'ancoraggio di un altro riquadro o contenitore) alla gestione contenitori. Ogni riquadro di ancoraggio mantiene un puntatore al divisore predefinito del riquadro.

  • Un divisore di riquadri divide solo due riquadri in un contenitore. Per altre informazioni, vedere Classe CPaneContainer.

Esempio

Nell'esempio seguente viene illustrato come chiamare un oggetto CPaneDivider da un oggetto CWorkspaceBar. Questo frammento di codice fa parte dell'esempio demo delle schede MDI.

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

Gerarchia di ereditarietà

CObject
└ CCmdTarget
└ CWnd
  └ CBasePane
   └ CPaneDivider

Requisiti

Intestazione: afxPaneDivider.h

CPaneDivider::SetAutoHideMode

void SetAutoHideMode(BOOL bMode);

Parametri

[in] bMode

Osservazioni:

CPaneDivider::SetPaneContainerManager

void SetPaneContainerManager(CPaneContainerManager* p);

Parametri

[in] p

Osservazioni:

CPaneDivider::AddPane

virtual void AddPane(CDockablePane* pBar);

Parametri

[in] pBar

Osservazioni:

CPaneDivider::AddPaneContainer

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

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

Parametri

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

Valore restituito

Osservazioni:

CPaneDivider::AddRecentPane

virtual CDockablePane* AddRecentPane(CDockablePane* pBar);

Parametri

[in] pBar

Valore restituito

Osservazioni:

CPaneDivider::CalcExpectedDockedRect

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

Parametri

[in] pWndToDock
[in] ptMouse
[in] rectResult
[in] bDrawTab
[in] ppTargetBar

Osservazioni:

CPaneDivider::CalcFixedLayout

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

Parametri

[in] bStretch
[in] bHorz

Valore restituito

Osservazioni:

CPaneDivider::CheckVisibility

virtual BOOL CheckVisibility();

Valore restituito

Osservazioni:

CPaneDivider::CPaneDivider

CPaneDivider();

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

Parametri

[in] bDefaultSlider
[in] pParent

Valore restituito

Osservazioni:

CPaneDivider::CreateEx

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

Parametri

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

Valore restituito

Osservazioni:

CPaneDivider::D oesAllowDynInsertBefore

virtual BOOL DoesAllowDynInsertBefore() const;

Valore restituito

Osservazioni:

CPaneDivider::D oesContainFloatingPane

virtual BOOL DoesContainFloatingPane();

Valore restituito

Osservazioni:

CPaneDivider::FindPaneContainer

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

Parametri

[in] pBar
[in] bLeftBar

Valore restituito

Osservazioni:

CPaneDivider::FindTabbedPane

CDockablePane* FindTabbedPane(UINT nID);

Parametri

[in] nID

Valore restituito

Osservazioni:

CPaneDivider::GetDefaultWidth

static int __stdcall GetDefaultWidth();

Valore restituito

Osservazioni:

CPaneDivider::GetFirstPane

const CBasePane* GetFirstPane() const;

Valore restituito

Osservazioni:

CPaneDivider::GetPaneDividers

Restituisce l'elenco dei divisori di riquadri che risiedono nella classe CPaneContainer. Questo metodo deve essere chiamato solo per i divisori di riquadri predefiniti.

void GetPaneDividers(CObList& lstSliders);

Parametri

lstSliders
[out] Contiene l'elenco dei divisori di riquadri che risiedono nel contenitore del riquadro.

Osservazioni:

Questo metodo deve essere chiamato solo per i divisori di riquadri predefiniti. Un divisore di riquadro predefinito è un divisore che ridimensiona l'intero contenitore del riquadro.

CPaneDivider::GetPaneDividerStyle

DWORD GetPaneDividerStyle() const;

Valore restituito

Osservazioni:

CPaneDivider::GetPanes

Restituisce l'elenco di riquadri che risiedono nella classe CPaneContainer. Questo metodo deve essere chiamato solo per recuperare i divisori predefiniti del riquadro.

void GetPanes(CObList& lstBars);

Parametri

lstBars
[out] Contiene l'elenco di riquadri che risiedono nel contenitore del riquadro.

Osservazioni:

Questo metodo deve essere chiamato solo per i divisori di riquadri predefiniti. Un divisore di riquadro predefinito è un divisore che ridimensiona l'intero contenitore del riquadro.

CPaneDivider::GetRootContainerRect

CRect GetRootContainerRect();

Valore restituito

Osservazioni:

CPaneDivider::GetWidth

int GetWidth() const;

Valore restituito

Osservazioni:

CPaneDivider::Init

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

Parametri

[in] bDefaultSlider
[in] pParent

Osservazioni:

CPaneDivider::InsertPane

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

Parametri

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

Valore restituito

Osservazioni:

CPaneDivider::IsAutoHideMode

BOOL IsAutoHideMode() const;

Valore restituito

Osservazioni:

CPaneDivider::IsDefault

BOOL IsDefault() const;

Valore restituito

Osservazioni:

CPaneDivider::IsHorizontal

BOOL IsHorizontal() const;

Valore restituito

Osservazioni:

CPaneDivider::m_nDefaultWidth

Specifica la larghezza predefinita, in pixel, di tutti i divisori di riquadri nell'applicazione.

AFX_IMPORT_DATA static int m_nDefaultWidth;

CPaneDivider::Move

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

Parametri

[in] ptOffset
[in] bAdjustLayout

Osservazioni:

CPaneDivider::m_pSliderRTC

Contiene un puntatore alle informazioni della classe di runtime su un CPaneDivideroggetto derivato da .

AFX_IMPORT_DATA static CRuntimeClass* m_pSliderRTC;

Osservazioni:

Impostare questa variabile membro se si crea un divisore di riquadro personalizzato. Ciò consente al framework di creare il divisore del riquadro quando viene disegnato il riquadro.

Esempio

Nell'esempio seguente viene illustrato come impostare la m_pSliderRTC variabile membro:

class CMySplitter : public CPaneDivider
{
...
};

CPaneDivider::m_pSliderRTC = RUNTIME_CLASS(CMySpliter);

CPaneDivider::NotifyAboutRelease

virtual void NotifyAboutRelease();

Osservazioni:

CPaneDivider::OnShowPane

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

Parametri

[in] pBar
[in] bShow

Osservazioni:

CPaneDivider::ReleaseEmptyPaneContainers

void ReleaseEmptyPaneContainers();

Osservazioni:

CPaneDivider::RemovePane

virtual void RemovePane(CDockablePane* pBar);

Parametri

[in] pBar

Osservazioni:

CPaneDivider::ReplacePane

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

Parametri

[in] pBarToReplace
[in] pBarToReplaceWith

Valore restituito

Osservazioni:

CPaneDivider::RepositionPanes

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

Parametri

[in] rectNew
[in] hdwp

Osservazioni:

CPaneDivider::Serialize

void Serialize(CArchive& ar);

Parametri

[in] ar

Osservazioni:

CPaneDivider::ShowWindow

void ShowWindow(int nCmdShow);

Parametri

[in] nCmdShow

Osservazioni:

CPaneDivider::StoreRecentDockSiteInfo

void StoreRecentDockSiteInfo(CDockablePane* pBar);

Parametri

[in] pBar

Osservazioni:

CPaneDivider::StoreRecentTabRelatedInfo

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

Parametri

[in] pDockingBar
[in] pTabbedBar

Osservazioni:

Vedi anche

Grafico della gerarchia
Classi
Classe CPaneContainerManager
Classe CPaneContainer
Classe CDockingManager
Classe CBasePane