CDockablePane-Klasse

Implementiert einen Bereich, der entweder in eine Docksite angedockt oder in einer Seite im Registerformat enthalten sein kann.

Syntax

class CDockablePane : public CPane

Member

Öffentliche Konstruktoren

Name Beschreibung
CDockablePane::CDockablePane Erstellt und initialisiert ein CDockablePane-Objekt.

Öffentliche Methoden

Name Beschreibung
CDockablePane::AttachToTabWnd Fügt einen Bereich an einen anderen Bereich an. Dadurch wird ein Bereich mit Registerkartenformat erstellt.
CDockablePane::CalcFixedLayout Gibt die Größe des Bereichsrechtecks zurück.
CDockablePane::CanAcceptMiniFrame Bestimmt, ob der angegebene Minirahmen an den Bereich angedockt werden kann.
CDockablePane::CanAcceptPane Bestimmt, ob ein anderer Bereich an den aktuellen Bereich angedockt werden kann.
CDockablePane::CanAutoHide Bestimmt, ob der Bereich den Modus für das automatische Ausblenden unterstützt. (Überschreibt CBasePane::CanAutoHide.)
CDockablePane::CanBeAttached Bestimmt, ob der aktuelle Bereich an einen anderen Bereich angedockt werden kann.
CDockablePane::ConvertToTabbedDocument Konvertiert einen oder mehrere andockbare Bereiche in MDI-Registerkartendokumente.
CDockablePane::CopyState Kopiert den Zustand eines andockbaren Bereichs.
CDockablePane::Create Erstellt das Windows-Steuerelement und fügt es an das CDockablePane Objekt an.
CDockablePane::CreateDefaultPaneDivider Erstellt eine Standardtrennlinie für den Bereich, während er an ein Rahmenfenster angedockt wird.
CDockablePane::CreateEx Erstellt das Windows-Steuerelement und fügt es an das CDockablePane Objekt an.
CDockablePane::CreateTabbedPane Erstellt einen Registerkartenbereich aus dem aktuellen Bereich.
CDockablePane::DockPaneContainer Dockt einen Container an den Bereich an.
CDockablePane::DockPaneStandard Dockt einen Bereich mithilfe der Gliederung (Standard)-Andockung an.
CDockablePane::DockToFrameWindow Wird intern verwendet. Um einen Bereich anzudocken, verwenden CPane::DockPane oder CDockablePane::DockToWindow.
CDockablePane::DockToRecentPos Dockt einen Bereich an seine gespeicherte zuletzt gespeicherte Andockposition an.
CDockablePane::DockToWindow Dockt einen Andockbereich an einen anderen Andockbereich an.
CDockablePane::EnableAutohideAll Aktiviert oder deaktiviert den Modus für das automatische Ausblenden für diesen Bereich zusammen mit anderen Bereichen im Container.
CDockablePane::EnableGripper Blendet die Untertitel (Ziehelement) ein oder aus.
CDockablePane::GetAHRestoredRect Gibt die Position des Bereichs an, wenn er im Modus für das automatische Ausblenden sichtbar ist.
CDockablePane::GetAHSlideMode Ruft den Automatischen Ausblenden des Folienmodus für den Bereich ab.
CDockablePane::GetAutoHideButton Wird intern verwendet.
CDockablePane::GetAutoHideToolBar Wird intern verwendet.
CDockablePane::GetCaptionHeight Gibt die Höhe des aktuellen Untertitel zurück.
CDockablePane::GetDefaultPaneDivider Gibt die Standardbereichstrennlinie für den Container des Bereichs zurück.
CDockablePane::GetDockingStatus Bestimmt die Möglichkeit eines Bereichs, basierend auf der bereitgestellten Zeigerposition angedockt zu werden.
CDockablePane::GetDragSensitivity Gibt die Ziehempfindlichkeit eines Andockbereichs zurück.
CDockablePane::GetLastPercentInPaneContainer Ruft den Prozentsatz des Platzes ab, den ein Bereich innerhalb seines Containers belegt.
CDockablePane::GetTabArea Ruft den Registerkartenbereich für den Bereich ab.
CDockablePane::GetTabbedPaneRTC Gibt die Laufzeitklasseninformationen zu einem Registerkartenfenster zurück, das erstellt wird, wenn ein anderer Bereich an den aktuellen Bereich angedockt wird.
CDockablePane::HasAutoHideMode Gibt an, ob ein Andockbereich in den Modus für das automatische Ausblenden umgeschaltet werden kann.
CDockablePane::HitTest Gibt die bestimmte Position in einem Bereich an, in dem der Benutzer mit der Maus klickt.
CDockablePane::IsAccessibilityCompatible Wird intern verwendet.
CDockablePane::IsAutohideAllEnabled Gibt an, ob der Andockbereich und alle anderen Bereiche im Container im Modus für das automatische Ausblenden platziert werden können.
CDockablePane::IsAutoHideMode Bestimmt, ob sich ein Bereich im Modus "Automatisch ausblenden" befindet.
CDockablePane::IsChangeState Wird intern verwendet.
CDockablePane::IsDocked Bestimmt, ob der aktuelle Bereich angedockt ist.
CDockablePane::IsHideInAutoHideMode Bestimmt das Verhalten eines Bereichs, der sich im Modus zum automatischen Ausblenden befindet, wenn er durch Aufrufen ShowPaneangezeigt (oder ausgeblendet) wird.
CDockablePane::IsInFloatingMultiPaneFrameWnd Gibt an, ob sich der Bereich in einem Fenster mit mehreren Fenstern befindet.
CDockablePane::IsResizable Gibt an, ob die Größe des Bereichs geändert werden kann.
CDockablePane::IsTabLocationBottom Gibt an, ob sich Registerkarten oben oder unten im Bereich befinden.
CDockablePane::IsTracked Gibt an, ob ein Bereich vom Benutzer gezogen wird.
CDockablePane::IsVisible Bestimmt, ob der aktuelle Bereich sichtbar ist.
CDockablePane::LoadState Wird intern verwendet.
CDockablePane::OnAfterChangeParent Wird vom Framework aufgerufen, wenn sich das übergeordnete Element eines Bereichs geändert hat. (Überschreibt CPane::OnAfterChangeParent.)
CDockablePane::OnAfterDockFromMiniFrame Wird vom Framework aufgerufen, wenn eine unverankerte Andockleiste an einem Rahmenfenster verankert ist.
CDockablePane::OnBeforeChangeParent Wird vom Framework aufgerufen, wenn sich das übergeordnete Element des Bereichs ändert. (Überschreibt CPane::OnBeforeChangeParent.)
CDockablePane::OnBeforeFloat Wird vom Framework aufgerufen, wenn ein Bereich in der Zeit zum Gleiten ist. (Überschreibt CPane::OnBeforeFloat.)
CDockablePane::RemoveFromDefaultPaneDividier Das Framework ruft diese Methode auf, wenn ein Bereich abgedocken wird.
CDockablePane::ReplacePane Ersetzt den Bereich durch einen angegebenen Bereich.
CDockablePane::RestoreDefaultPaneDivider Das Framework ruft diese Methode als Bereich auf, um die Standardbereichstrennlinie wiederherzustellen.
CDockablePane::SaveState Wird intern verwendet.
CDockablePane::Serialize Serialisiert den Bereich. (Überschreibt CBasePane::Serialize.)
CDockablePane::SetAutoHideMode Schaltet den Andockbereich zwischen dem sichtbaren und automatischen Ausblenden um.
CDockablePane::SetAutoHideParents Legt die Schaltfläche zum automatischen Ausblenden und die Symbolleiste für das automatische Ausblenden für den Bereich fest.
CDockablePane::SetDefaultPaneDivider Wird intern verwendet.
CDockablePane::SetLastPercentInPaneContainer Legt den Prozentsatz des Platzes fest, den ein Bereich innerhalb seines Containers belegt.
CDockablePane::SetResizeMode Wird intern verwendet.
CDockablePane::SetRestoredDefaultPaneDivider Legt die wiederhergestellte Standardbereichstrennlinie fest.
CDockablePane::SetTabbedPaneRTC Legt die Laufzeitklasseninformationen für ein Registerkartenfenster fest, das erstellt wird, wenn zwei Bereiche miteinander andocken.
CDockablePane::ShowPane Blendet einen Bereich ein oder aus.
CDockablePane::Slide Blendet einen Bereich mit einer Schiebeanimation ein oder aus, die nur angezeigt wird, wenn sich der Bereich im Modus zum automatischen Ausblenden befindet.
CDockablePane::ToggleAutoHide Schaltet den Modus zum automatischen Ausblenden um. (Außerkraftsetzungen CPane::ToggleAutoHide .)
CDockablePane::UndockPane Hebt einen Bereich entweder vom Standard Rahmenfenster oder einem Miniframefenstercontainer ab.
CDockablePane::UnSetAutoHideMode Wird intern verwendet. Um den Modus für das automatische Ausblenden festzulegen, verwenden Sie CDockablePane::SetAutoHideMode

Geschützte Methoden

Name Beschreibung
CDockablePane::CheckAutoHideCondition Bestimmt, ob der Andockbereich ausgeblendet ist (im Modus für das automatische Ausblenden).
CDockablePane::CheckStopSlideCondition Bestimmt, wann ein Andockbereich automatisch ausgeblendet werden soll, wenn das Ziehen beendet werden soll.
CDockablePane::DrawCaption Zeichnet den Andockbereich Untertitel (Ziehelement).
CDockablePane::OnPressButtons Wird aufgerufen, wenn der Benutzer eine andere schaltfläche Untertitel als die AFX_HTCLOSE Schaltflächen und AFX_HTMAXBUTTON Schaltflächen drückt.
CDockablePane::OnSlide Wird vom Framework aufgerufen, um den Auto-Ausblenden-Folieneffekt zu rendern, wenn der Bereich entweder angezeigt oder ausgeblendet wird.

Datenelemente

Name Beschreibung
CDockablePane::m_bDisableAnimation Gibt an, ob die Animation für das automatische Ausblenden des andockbaren Bereichs deaktiviert ist.
CDockablePane::m_bHideInAutoHideMode Bestimmt das Verhalten des Bereichs, wenn sich der Bereich im Modus "Automatisch ausblenden" befindet.
CDockablePane::m_nSlideSteps Gibt die Animationsgeschwindigkeit des Bereichs an, wenn er beim automatischen Ausblenden angezeigt oder ausgeblendet wird.

Hinweise

CDockablePane implementiert die folgenden Funktionen:

  • Andocken eines Bereichs an ein Standard Rahmenfenster.

  • Wechseln eines Bereichs zum automatischen Ausblenden.

  • Anfügen eines Bereichs an ein Registerkartenfenster.

  • Gleiten eines Bereichs in einem Miniframefenster.

  • Andocken eines Bereichs an einen anderen Bereich, der in einem Miniframefenster unverankert ist.

  • Ändern der Größe eines Bereichs

  • Lade- und Speicherzustand für einen Andockbereich.

    Hinweis

    Statusinformationen werden in der Windows-Registrierung gespeichert.

  • Erstellen eines Bereichs mit oder ohne Untertitel. Die Untertitel kann eine Beschriftung aufweisen und mit einer Farbverlauffarbe gefüllt werden.

  • Ziehen eines Bereichs beim Anzeigen des Inhalts des Bereichs

  • Ziehen eines Bereichs beim Anzeigen eines Ziehrechtecks.

Um einen Andockbereich in Ihrer Anwendung zu verwenden, leiten Sie Ihre Bereichsklasse von der CDockablePane Klasse ab. Betten Sie das abgeleitete Objekt entweder in das Standard Framefensterobjekt oder in ein Fensterobjekt ein, das die Instanz des Bereichs steuert. Rufen Sie dann die CDockablePane::Create Methode oder die CDockablePane::CreateEx Methode auf, wenn Sie die WM_CREATE Nachricht im Standard Framefenster verarbeiten. Richten Sie schließlich das Bereichsobjekt durch Aufrufen CBasePane::EnableDocking, oder CBasePane::DockPaneCDockablePane::AttachToTabWnd.

Anpassungstipps

Die folgenden Tipps gelten für CDockablePane Objekte:

  • Wenn Sie zwei nicht tabstoppfähige Bereiche aufrufen CDockablePane::AttachToTabWnd , wird ein Zeiger auf ein Registerkartenfenster im ppTabbedControlBar Parameter zurückgegeben. Mit diesem Parameter können Sie dem Fenster "Registerkarten" weiterhin Registerkarten hinzufügen.

  • Die Art des Registerkartenbereichs, von CDockablePane::AttachToTabWnd dem erstellt wird, wird durch das CDockablePane Objekt im pTabControlBarAttachTo Parameter bestimmt. Sie können aufrufen CDockablePane::SetTabbedPaneRTC , um die Art des Registerkartenbereichs festzulegen, den der CDockablePane Benutzer erstellt. Der Standardtyp wird durch den dwTabbedStyleCDockablePane::Create Zeitpunkt der erstellung CDockablePanebestimmt. Wenn dwTabbedStyle der AFX_CBRS_OUTLOOK_TABS Standardtyp "Klasse" istCMFCOutlookBar; wenn dwTabbedStyle der Standardtyp "Klasse" ist AFX_CBRS_REGULAR_TABSCTabbedPane.

  • Wenn Sie einen andockbaren Bereich an einen anderen andocken möchten, rufen Sie die CDockablePane::DockToWindow Methode auf. Der ursprüngliche Bereich muss an einer beliebigen Stelle angedockt werden, bevor Sie diese Methode aufrufen.

  • Die Membervariable CDockablePane::m_bHideInAutoHideMode steuert, wie sich andockbare Bereiche beim Aufrufen CDockablePane::ShowPaneim Modus für das automatische Ausblenden verhalten. Wenn diese Membervariable auf TRUE"Andockbare Bereiche" festgelegt ist und deren Schaltflächen für das automatische Ausblenden ausgeblendet werden. Andernfalls werden sie ein- und ausziehen.

  • Sie können die Animation zum automatischen Ausblenden deaktivieren, indem Sie die CDockablePane::m_bDisableAnimation Membervariable auf TRUEfestlegen.

Beispiel

Im folgenden Beispiel wird das Konfigurieren eines CDockablePane Objekts mithilfe verschiedener Methoden in der CDockablePane Klasse veranschaulicht. Das Beispiel veranschaulicht, wie Sie das Feature für das automatische Ausblenden für den andockbaren Bereich aktivieren, die Untertitel oder das Ziehelement aktivieren, den Modus "Auto-Ausblenden" aktivieren, den Bereich anzeigen und einen Bereich animieren, der sich im Modus "Automatisch ausblenden" befindet. Dieser Codeausschnitt ist Teil des Visual Studio Demo-Beispiels.

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

Vererbungshierarchie

CObject

CCmdTarget

CWnd

CBasePane

CPane

CDockablePane

Anforderungen

HeaderafxDockablePane.h:

CDockablePane::AttachToTabWnd

Fügt den aktuellen Bereich an einen Zielbereich an und erstellt einen Registerkartenbereich.

virtual CDockablePane* AttachToTabWnd(
    CDockablePane* pTabControlBarAttachTo,
    AFX_DOCK_METHOD dockMethod,
    BOOL bSetActive= TRUE,
    CDockablePane** ppTabbedControlBar = NULL);

Parameter

pTabControlBarAttachTo
[in, out] Gibt den Zielbereich an, an den der aktuelle Bereich angefügt ist. Der Zielbereich muss ein andockbarer Bereich sein.

dockMethod
[in] Gibt die Docking-Methode an.

bSetActive
[in] TRUE zum Aktivieren des Registerkartenbereichs nach dem Anfügenvorgang; andernfalls . FALSE

ppTabbedControlBar
[out] Enthält den Registerkartenbereich, der aus dem Anfügen-Vorgang resultiert.

Rückgabewert

Ein Zeiger auf den aktuellen Bereich, wenn es sich nicht um einen Registerkartenbereich handelt; andernfalls ein Zeiger auf den Registerkartenbereich, der aus dem Anfügevorgang resultiert. Der Rückgabewert ist NULL , wenn der aktuelle Bereich nicht angefügt werden kann oder wenn ein Fehler auftritt.

Hinweise

Wenn ein andockbarer Bereich mit dieser Methode an einen anderen Bereich angefügt wird, tritt Folgendes auf:

  1. Das Framework überprüft, ob der Zielbereich ein regulärer Andockbereich pTabControlBarAttachTo ist oder ob er von CBaseTabbedPane.

  2. Wenn der Zielbereich ein Registerkartenbereich ist, fügt das Framework den aktuellen Bereich als Registerkarte hinzu.

  3. Wenn der Zielbereich ein regulärer Andockbereich ist, erstellt das Framework einen Registerkartenbereich.

    • Das Framework ruft pTabControlBarAttachTo->CreateTabbedPane. Die Formatvorlage des neuen Registerkartenbereichs hängt vom Element ab m_pTabbedControlBarRTC . Standardmäßig ist dieser Member auf die Laufzeitklasse von CTabbedPane. Wenn Sie die AFX_CBRS_OUTLOOK_TABS Formatvorlage als dwTabbedStyle Parameter an die CDockablePane::Create Methode übergeben, wird das Laufzeitklassenobjekt auf die Laufzeitklasse von CMFCOutlookBar. Sie können dieses Element jederzeit ändern, um die Formatvorlage des neuen Bereichs zu ändern.

    • Wenn diese Methode einen Registerkartenbereich erstellt, ersetzt das Framework den Zeiger ( pTabControlBarAttachTo wenn der Bereich in einem Mehr-Miniframe-Fenster angedockt oder unverankert ist) durch einen Zeiger auf den neuen Registerkartenbettbereich.

    • Das Framework fügt den pTabControlBarAttachTo Bereich als erste Registerkarte zum Registerkartenbereich hinzu. Das Framework fügt dann den aktuellen Bereich als zweite Registerkarte hinzu.

  4. Wenn der aktuelle Bereich von abgeleitet CBaseTabbedPanewird, werden alle Registerkarten verschoben pTabControlBarAttachTo und der aktuelle Bereich wird zerstört. Achten Sie daher darauf, wenn Sie diese Methode aufrufen, da ein Zeiger auf den aktuellen Bereich möglicherweise ungültig ist, wenn die Methode zurückgegeben wird.

Wenn Sie beim Erstellen eines Andocklayouts einen Bereich an eine andere anfügen, legen Sie diesen dockMethod wert fest.DM_SHOW

Sie sollten den ersten Bereich andocken, bevor Sie einen anderen Bereich anfügen.

CDockablePane::CalcFixedLayout

Gibt die Größe des Bereichsrechtecks zurück.

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

Parameter

bStretch
[in] Wird nicht verwendet.

bHorz
[in] Wird nicht verwendet.

Rückgabewert

Ein CSize Objekt, das die Größe des Bereichsrechtecks enthält.

CDockablePane::CanAcceptMiniFrame

Bestimmt, ob der angegebene Miniframe an den Bereich angedockt werden kann.

virtual BOOL CanAcceptMiniFrame(CPaneFrameWnd* pMiniFrame) const;

Parameter

pMiniFrame
[in] Zeiger auf ein CPaneFrameWnd Objekt.

Rückgabewert

TRUE wenn pMiniFrame an den Bereich angedockt werden kann; andernfalls FALSE.

CDockablePane::CanAcceptPane

Bestimmt, ob ein anderer Bereich an den aktuellen Bereich angedockt werden kann.

virtual BOOL CanAcceptPane(const CBasePane* pBar) const;

Parameter

pBar
[in] Gibt den Bereich an, der an den aktuellen Bereich angedockt werden soll.

Rückgabewert

TRUEwenn der angegebene Bereich an diesen Bereich angedockt werden kann; andernfalls . FALSE

Hinweise

Das Framework ruft diese Methode auf, bevor ein Bereich an den aktuellen Bereich angedockt wird.

Überschreiben Sie diese Funktion in einer abgeleiteten Klasse, um das Andocken an einen bestimmten Bereich zu aktivieren oder zu deaktivieren.

Standardmäßig gibt diese Methode zurück TRUE , wenn entweder pBar oder das übergeordnete Element vom Typ CDockablePaneist.

CDockablePane::CanAutoHide

Bestimmt, ob der Bereich automatisch ausgeblendet werden kann.

virtual BOOL CanAutoHide() const;

Rückgabewert

TRUEwenn der Bereich automatisch ausgeblendet werden kann; andernfalls . FALSE

Hinweise

CDockablePane::CanAutoHide gibt in einer der folgenden Situationen zurück FALSE :

  • Der Bereich hat kein übergeordnetes Element.

  • Der Andock-Manager lässt das automatische Ausblenden von Bereichen nicht zu.

  • Der Bereich ist nicht angedockt.

CDockablePane::CanBeAttached

Bestimmt, ob der aktuelle Bereich an einen anderen Bereich angedockt werden kann.

virtual BOOL CanBeAttached() const;

Rückgabewert

TRUEwenn der andockbare Bereich an einen anderen Bereich oder an das Standard Rahmenfenster angedockt werden kann; andernfalls . FALSE

Hinweise

Standardmäßig gibt diese Methode immer zurück TRUE. Überschreiben Sie diese Methode in einer abgeleiteten Klasse, um das Andocken ohne Aufruf CBasePane::EnableDockingzu aktivieren oder zu deaktivieren.

CDockablePane::CDockablePane

Erstellt und initialisiert ein CDockablePane-Objekt.

CDockablePane();

Hinweise

Nachdem Sie ein dockbares Bereichsobjekt erstellt haben, rufen Sie es auf CDockablePane::Create , oder CDockablePane::CreateEx erstellen Sie es.

CDockablePane::ConvertToTabbedDocument

Konvertiert einen oder mehrere andockbare Bereiche in MDI-Registerkartendokumente.

virtual void ConvertToTabbedDocument(BOOL bActiveTabOnly = TRUE);

Parameter

bActiveTabOnly
[in] Wenn Sie ein CTabbedPane, geben Sie TRUE an, dass nur die aktive Registerkarte konvertiert werden soll. Geben Sie FALSE an, dass alle Registerkarten im Bereich konvertiert werden sollen.

CDockablePane::CheckAutoHideCondition

Bestimmt, ob der Andockbereich ausgeblendet ist (auch als Autohide-Modus bezeichnet).

virtual BOOL CheckAutoHideCondition();

Rückgabewert

TRUEwenn die Bedingung zum Ausblenden erfüllt ist; andernfalls . FALSE

Hinweise

Das Framework verwendet einen Timer, um regelmäßig zu überprüfen, ob ein automatisch verankerter Bereich ausgeblendet werden soll. Die Methode gibt zurück TRUE , wenn der Bereich nicht aktiv ist, die Größe des Bereichs nicht geändert wird und der Mauszeiger nicht über dem Bereich liegt.

Wenn alle vorherigen Bedingungen erfüllt sind, ruft das Framework das Ausblenden des Bereichs auf CDockablePane::Slide .

CDockablePane::CheckStopSlideCondition

Bestimmt, wann ein Autohide-Andockbereich nicht mehr gleiten soll.

virtual BOOL CheckStopSlideCondition(BOOL bDirection);

Parameter

bDirection
[in] TRUE wenn der Bereich sichtbar ist; FALSE wenn der Bereich ausgeblendet ist.

Rückgabewert

TRUEwenn die Stoppbedingung erfüllt ist; andernfalls . FALSE

Hinweise

Wenn ein andockbarer Bereich auf den Automatischen Modus festgelegt ist, verwendet das Framework Gleiteffekte, um den Bereich ein- oder auszublenden. Das Framework ruft diese Funktion auf, wenn der Bereich gleitet. CheckStopSlideCondition gibt zurück TRUE , wenn der Bereich vollständig sichtbar ist oder wenn er vollständig ausgeblendet ist.

Überschreiben Sie diese Methode in einer abgeleiteten Klasse, um benutzerdefinierte Autohideeffekte zu implementieren.

CDockablePane::CopyState

Kopiert den Zustand eines andockbaren Bereichs.

virtual void CopyState(CDockablePane* pOrgBar);

Parameter

pOrgBar
[in] Ein Zeiger auf einen andockbaren Bereich.

Hinweise

CDockablePane::CopyState kopiert den Status des pOrgBar aktuellen Bereichs, indem die folgenden Methoden aufgerufen werden:

CDockablePane::Create

Erstellt das Windows-Steuerelement und fügt es an das CDockablePane Objekt an.

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

Parameter

lpszCaption
[in] Gibt den Fensternamen an.

pParentWnd
[in, out] Gibt das übergeordnete Fenster an.

rect
[in] Gibt die Größe und Position des Fensters in Clientkoordinaten von pParentWnd.

bHasGripper
[in] TRUE um den Bereich mit einem Untertitel zu erstellen; andernfalls . FALSE

nID
[in] Gibt die ID des untergeordneten Fensters an. Dieser Wert muss eindeutig sein, wenn Sie den Andockzustand für diesen Andockbereich speichern möchten.

dwStyle
[in] Gibt die Attribute der Fensterformatvorlage an.

dwTabbedStyle
[in] Gibt das Format eines Registerkartenfensters an, das erstellt wird, wenn der Benutzer einen Bereich auf die Untertitel dieses Bereichs zieht.

dwControlBarStyle
[in] Gibt zusätzliche Formatvorlagenattribute an.

pContext
[in, out] Gibt den Erstellungskontext des Fensters an.

lpszWindowName
[in] Gibt den Fensternamen an.

sizeDefault
[in] Gibt die Größe des Fensters an.

Rückgabewert

TRUEwenn der andockbare Bereich erfolgreich erstellt wurde; andernfalls . FALSE

Hinweise

Erstellt einen Windows-Bereich und fügt ihn an das CDockablePane Objekt an.

Wenn die dwStyle Fensterformatvorlage über die CBRS_FLOAT_MULTI Kennzeichnung verfügt, kann das Miniframefenster mit anderen Bereichen im Miniframefenster schweben. Andockbereiche können standardmäßig nur einzeln schweben.

Wenn der dwTabbedStyle Parameter das AFX_CBRS_OUTLOOK_TABS Kennzeichen angegeben hat, erstellt der Bereich Registerkartenbereiche im Outlook-Stil, wenn ein anderer Bereich mithilfe der CDockablePane::AttachToTabWnd Methode an diesen Bereich angefügt wird. Standardmäßig erstellen andockbare Bereiche reguläre Registerkartenbereiche vom Typ CTabbedPane.

CDockablePane::CreateDefaultPaneDivider

Erstellt eine Standardtrennlinie für den Bereich, während er an ein Rahmenfenster angedockt wird.

static CPaneDivider* __stdcall CreateDefaultPaneDivider(
    DWORD dwAlignment,
    CWnd* pParent,
    CRuntimeClass* pSliderRTC = NULL);

Parameter

dwAlignment
[in] Gibt die Seite des Standard Rahmens an, an den der Bereich angedockt wird. Wenn dwAlignment die Methode das CBRS_ALIGN_LEFT Trennzeichen enthält, CBRS_ALIGN_RIGHT erstellt diese Methode eine vertikale (CPaneDivider::SS_VERT) Trennlinie. Andernfalls erstellt diese Methode eine horizontale (CPaneDivider::SS_HORZ) Trennlinie.

pParent
[in] Zeiger auf den übergeordneten Frame.

pSliderRTC
[in] Wird nicht verwendet.

Rückgabewert

Diese Methode gibt einen Zeiger auf die neu erstellte Trennlinie zurück oder NULL wenn die Dividiererstellung fehlschlägt.

Hinweise

dwAlignment kann eine der folgenden Werte sein:

Wert Beschreibung
CBRS_ALIGN_TOP Der Bereich wird am oberen Rand des Clientbereichs eines Rahmenfensters angedockt.
CBRS_ALIGN_BOTTOM Der Bereich wird am unteren Rand des Clientbereichs eines Rahmenfensters angedockt.
CBRS_ALIGN_LEFT Der Bereich wird an der linken Seite des Clientbereichs eines Rahmenfensters angedockt.
CBRS_ALIGN_RIGHT Der Bereich wird an der rechten Seite des Clientbereichs eines Rahmenfensters angedockt.

CDockablePane::CreateEx

Erstellt das Windows-Steuerelement und fügt es an das CDockablePane Objekt an.

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

Parameter

dwStyleEx
[in] Gibt die erweiterten Formatvorlagenattribute für das neue Fenster an.

lpszCaption
[in] Gibt den Fensternamen an.

pParentWnd
[in, out] Gibt das übergeordnete Fenster an.

rect
[in] Gibt die Größe und Position des Fensters in Clientkoordinaten von pParentWnd.

bHasGripper
[in] TRUE um den Bereich mit einem Untertitel zu erstellen; andernfalls . FALSE

nID
[in] Gibt die ID des untergeordneten Fensters an. Dieser Wert muss eindeutig sein, wenn Sie den Andockzustand für diesen Andockbereich speichern möchten.

dwStyle
[in] Gibt die Attribute der Fensterformatvorlage an.

dwTabbedStyle
[in] Gibt das Format eines Registerkartenfensters an, das erstellt wird, wenn der Benutzer einen Bereich auf die Untertitel dieses Bereichs zieht.

dwControlBarStyle
[in] Gibt die zusätzlichen Formatvorlagenattribute an.

pContext
[in, out] Gibt den Erstellungskontext des Fensters an.

Rückgabewert

TRUEwenn der andockbare Bereich erfolgreich erstellt wurde; andernfalls . FALSE

Hinweise

Erstellt einen Windows-Bereich und fügt ihn an das CDockablePane Objekt an.

Wenn die dwStyle Fensterformatvorlage über die CBRS_FLOAT_MULTI Kennzeichnung verfügt, kann das Miniframefenster mit anderen Bereichen im Miniframefenster schweben. Andockbereiche können standardmäßig nur einzeln schweben.

Wenn der dwTabbedStyle Parameter das AFX_CBRS_OUTLOOK_TABS Kennzeichen angegeben hat, erstellt der Bereich Registerkartenbereiche im Outlook-Stil, wenn ein anderer Bereich mithilfe der CDockablePane::AttachToTabWnd Methode an diesen Bereich angefügt wird. Standardmäßig erstellen andockbare Bereiche reguläre Registerkartenbereiche vom Typ CTabbedPane.

CDockablePane::CreateTabbedPane

Erstellt einen Registerkartenbereich aus dem aktuellen Bereich.

virtual CTabbedPane* CreateTabbedPane();

Rückgabewert

Der neue Registerkartenbereich oder NULL wenn der Erstellungsvorgang fehlgeschlagen ist.

Hinweise

Das Framework ruft diese Methode auf, wenn ein Registerkartenbereich erstellt wird, um diesen Bereich zu ersetzen. Weitere Informationen finden Sie unter CDockablePane::AttachToTabWnd.

Überschreiben Sie diese Methode in einer abgeleiteten Klasse, um anzupassen, wie Registerkartenbereiche erstellt und initialisiert werden.

Der Registerkartenbereich wird entsprechend den im m_pTabbedControlBarRTC Element gespeicherten Laufzeitklasseninformationen erstellt, die von der CDockablePane::CreateEx Methode initialisiert werden.

CDockablePane::DockPaneContainer

Dockt einen Container an den Bereich an.

virtual BOOL DockPaneContainer(
    CPaneContainerManager& barContainerManager,
    DWORD dwAlignment,
    AFX_DOCK_METHOD dockMethod);

Parameter

barContainerManager
[in] Ein Verweis auf den Container-Manager des Containers, der angedockt wird.

dwAlignment
[in] DWORD die die Seite des Bereichs angibt, an den der Container angedockt wird.

dockMethod
[in] Wird nicht verwendet.

Rückgabewert

TRUEwenn der Container erfolgreich an den Bereich angedockt wurde; andernfalls . FALSE

Hinweise

dwAlignment kann eine der folgenden Werte sein:

Wert Beschreibung
CBRS_ALIGN_TOP Der Container wird am oberen Rand des Bereichs angedockt.
CBRS_ALIGN_BOTTOM Der Container wird am unteren Rand des Bereichs angedockt.
CBRS_ALIGN_LEFT Der Container wird links neben dem Bereich angedockt.
CBRS_ALIGN_RIGHT Der Container wird rechts neben dem Bereich angedockt.

CDockablePane::DockPaneStandard

Dockt einen Bereich mithilfe der Gliederung (Standard)-Andockung an.

virtual CPane* DockPaneStandard(BOOL& bWasDocked);

Parameter

bWasDocked
[in] Wenn die Methode zurückgegeben wird, enthält TRUE dieser Wert, ob der Bereich erfolgreich angedockt wurde; andernfalls enthält FALSEer .

Rückgabewert

Wenn der Bereich an ein Registerkartenfenster angedockt wurde oder ein Registerkartenfenster aufgrund des Andockens erstellt wurde, gibt diese Methode einen Zeiger auf das Registerkartenfenster zurück. Wenn der Bereich andernfalls erfolgreich angedockt wurde, gibt diese Methode den this Zeiger zurück. Wenn das Andocken fehlgeschlagen ist, gibt diese Methode zurück NULL.

CDockablePane::DockToRecentPos

Verankert einen Bereich an der gespeicherten Andockposition.

BOOL CDockablePane::DockToRecentPos();

Rückgabewert

TRUEwenn der Bereich erfolgreich angedockt ist; andernfalls . FALSE

Hinweise

Andockbare Bereiche speichern aktuelle Andockinformationen in einem CRecentDockSiteInfo Objekt.

CDockablePane::DockToWindow

Dockt einen Andockbereich an einen anderen Andockbereich an.

virtual BOOL DockToWindow(
    CDockablePane* pTargetWindow,
    DWORD dwAlignment,
    LPCRECT lpRect = NULL);

Parameter

pTargetWindow
[in, out] Gibt den andockbaren Bereich an, an den dieser Bereich angedockt werden soll.

dwAlignment
[in] Gibt die Andockausrichtung für den Bereich an. Kann eine von CBRS_ALIGN_LEFT, , , CBRS_ALIGN_RIGHToder CBRS_ALIGN_BOTTOMCBRS_ALIGN_ANYCBRS_ALIGN_TOP. (Definiert in afxres.h.)

lpRect
[in] Gibt das Andockrechteck für den Bereich an.

Rückgabewert

TRUEwenn der Bereich erfolgreich angedockt wurde; andernfalls . FALSE

Hinweise

Rufen Sie diese Methode auf, um einen Bereich an einen anderen Bereich mit der durch dwAlignmentdie Angegebenen Ausrichtung anzudocken.

CDockablePane::DrawCaption

Zeichnet die Untertitel (auch als Ziehelement bezeichnet) eines Andockbereichs.

virtual void DrawCaption(
    CDC* pDC,
    CRect rectCaption);

Parameter

pDC
[in] Stellt den Gerätekontext dar, der für die Zeichnung verwendet wird.

rectCaption
[in] Gibt das umgebende Rechteck des Untertitel des Bereichs an.

Hinweise

Das Framework ruft diese Methode auf, um die Untertitel eines andockbaren Bereichs zu zeichnen.

Überschreiben Sie diese Methode in einer abgeleiteten Klasse, um die Darstellung des Untertitel anzupassen.

CDockablePane::EnableAutohideAll

Aktiviert oder deaktiviert den Autohidemodus für diesen Bereich und für andere Bereiche im Container.

void EnableAutohideAll(BOOL bEnable = TRUE);

Parameter

bEnable
[in] TRUE um das Feature "Alle automatisch einblenden" für den andockbaren Bereich zu aktivieren; andernfalls . FALSE

Hinweise

Wenn ein Benutzer die STRG-TASTE hält und auf die Schaltfläche "Anheften" klickt, um einen Bereich in den Autohidemodus zu wechseln, werden alle anderen Bereiche im selben Container ebenfalls in den Autohidemodus gewechselt.

Rufen Sie diese Methode auf, um bEnable dieses Feature für einen bestimmten Bereich zu FALSE deaktivieren.

CDockablePane::EnableGripper

Blendet die Untertitel ein oder aus (auch als Ziehelement bezeichnet).

virtual void EnableGripper(BOOL bEnable);

Parameter

bEnable
[in] TRUE um die Untertitel zu aktivieren; andernfalls . FALSE

Hinweise

Wenn das Framework andockbare Bereiche erstellt, verfügen sie nicht über das WS_STYLE Fensterformat, auch wenn angegeben. Dies bedeutet, dass die Untertitel des Bereichs ein Nicht-Clientbereich ist, der vom Framework gesteuert wird, aber dieser Bereich unterscheidet sich von dem Standardfenster Untertitel.

Sie können die Untertitel jederzeit ein- oder ausblenden. Das Framework blendet die Untertitel aus, wenn ein Bereich einem Registerkartenfenster als Registerkarte hinzugefügt wird oder wenn ein Bereich in einem Miniframefenster angezeigt wird.

CDockablePane::GetAHRestoredRect

Gibt die Position des Bereichs beim automatischen Ausblenden an.

CRect GetAHRestoredRect() const;

Rückgabewert

Ein CRect Objekt, das die Position des Bereichs enthält, wenn es sich im Modus für das automatische Ausblenden befindet.

Hinweise

CDockablePane::GetAHSlideMode

Ruft den Automatisch ausblenden-Folienmodus für den Bereich ab.

virtual UINT GetAHSlideMode() const;

Rückgabewert

Ein UINT Wert, der den Automatisch-Ausblenden-Folienmodus für den Bereich angibt. Der Rückgabewert kann entweder AFX_AHSM_MOVE oder AFX_AHSM_STRETCH, aber die Implementierung verwendet AFX_AHSM_MOVEnur .

Hinweise

CDockablePane::GetCaptionHeight

Gibt die Höhe des aktuellen Untertitel in Pixel zurück.

virtual int GetCaptionHeight() const;

Rückgabewert

Die Höhe des Untertitel in Pixeln.

Hinweise

Die Untertitel Höhe ist 0, wenn die Untertitel von der CDockablePane::EnableGripper Methode ausgeblendet wurde oder wenn der Bereich keine Untertitel hat.

CDockablePane::GetDefaultPaneDivider

Gibt die Standardbereichstrennlinie für den Container des Bereichs zurück.

CPaneDivider* GetDefaultPaneDivider() const;

Rückgabewert

Ein gültiges CPaneDivider Objekt, wenn der andockbare Bereich an das Standard Framefenster angedockt ist oder NULL der andockbare Bereich nicht angedockt ist oder ob er unverankert ist.

Hinweise

Weitere Informationen zu Bereichsteilern finden Sie unter CPaneDivider "Klasse".

CDockablePane::GetDockingStatus

Bestimmt die Möglichkeit eines Bereichs, basierend auf der bereitgestellten Zeigerposition angedockt zu werden.

virtual AFX_CS_STATUS GetDockingStatus(
    CPoint pt,
    int nSensitivity);

Parameter

pt
[in] Die Position des Zeigers in Bildschirmkoordinaten.

nSensitivity
[in] Der Abstand in Pixeln vom Rand eines Rechtecks, den der Zeiger entfernt, muss das Andocken aktivieren.

Rückgabewert

Einer der folgenden Statuswerte:

Wert vom Typ AFX_CS_STATUS Bedeutung
CS_NOTHING Der Zeiger liegt nicht über einem Dockstandort. Das Framework dockt den Bereich nicht an.
CS_DOCK_IMMEDIATELY Der Zeiger befindet sich im unmittelbaren Modus über dem Dockstandort (der Bereich verwendet den DT_IMMEDIATE Andockmodus). Das Framework dockt den Bereich sofort an.
CS_DELAY_DOCK Der Zeiger befindet sich über einem Dockstandort, bei dem es sich um einen anderen Andockbereich oder um einen Rand des Standard Frames handelt. Das Framework dockt den Bereich nach einer Verzögerung an. Weitere Informationen zu dieser Verzögerung finden Sie im Abschnitt "Hinweise".
CS_DELAY_DOCK_TO_TAB Der Zeiger befindet sich über einer Dockwebsite, die bewirkt, dass der Bereich in einem Registerkartenfenster verankert wird. Dies tritt auf, wenn sich der Zeiger über dem Untertitel eines anderen Andockbereichs oder über dem Registerkartenbereich eines Registerkartenbereichs befindet.

Hinweise

Das Framework ruft diese Methode auf, um das Andocken eines unverankerten Bereichs zu behandeln.

Bei unverankerten Symbolleisten oder Andockbereichen, die den DT_IMMEDIATE Andockmodus verwenden, verzögert das Framework den Dockbefehl, damit der Benutzer das Fenster aus dem Clientbereich des übergeordneten Frames verschieben kann, bevor das Andocken erfolgt. Die Länge der Verzögerung wird in Millisekunden gemessen und vom CDockingManager::m_nTimeOutBeforeToolBarDock Datenmemm gesteuert. Der Standardwert von CDockingManager::m_nTimeOutBeforeToolBarDock lautet 200. Dieses Verhalten emuliert das Andockverhalten von Microsoft Word 2007.

Bei verzögerten Andockzuständen (CS_DELAY_DOCK und CS_DELAY_DOCK_TO_TAB) wird das Framework erst andocken, wenn der Benutzer die Maustaste loslässt. Wenn ein Bereich den DT_STANDARD Andockmodus verwendet, zeigt das Framework an der projizierten Docking-Position ein Rechteck an. Wenn ein Bereich den DT_SMART Dockingmodus verwendet, zeigt das Framework intelligente Docking-Marker und halbtransparente Rechtecke an der projizierten Docking-Position an. Rufen Sie die CBasePane::SetDockingMode Methode auf, um den Andockmodus für Ihren Bereich anzugeben. Weitere Informationen zum intelligenten Andocken finden Sie unter CDockingManager::GetSmartDockingParams.

CDockablePane::GetDragSensitivity

Gibt die Ziehempfindlichkeit eines Andockbereichs zurück.

static const CSize& GetDragSensitivity();

Rückgabewert

Ein CSize Objekt, das die Breite und Höhe eines Rechtecks in Pixeln enthält, das auf einem Ziehpunkt zentriert ist. Der Ziehvorgang beginnt erst, wenn der Mauszeiger außerhalb dieses Rechtecks bewegt wird.

CDockablePane::GetLastPercentInPaneContainer

Ruft den Prozentsatz des Platzes ab, den ein Bereich in seinem Container belegt ( CPaneContainer Klasse).

int GetLastPercentInPaneContainer() const;

Rückgabewert

Ein int Wert, der den Prozentsatz des Platzes angibt, den der Bereich in seinem Container belegt.

Hinweise

Diese Methode wird verwendet, wenn der Container sein Layout anpasst.

CDockablePane::GetTabArea

Ruft den Registerkartenbereich für den Bereich ab.

virtual void GetTabArea(
    CRect& rectTabAreaTop,
    CRect& rectTabAreaBottom) const;

Parameter

rectTabAreaTop
[in] GetTabArea füllt diese Variable mit dem Registerkartenbereich aus, wenn sich Registerkarten am oberen Rand des Bereichs befinden. Wenn sich Registerkarten am unteren Rand des Bereichs befinden, wird diese Variable mit einem leeren Rechteck gefüllt.

rectTabAreaBottom
[in] GetTabArea füllt diese Variable mit dem Registerkartenbereich aus, wenn sich Registerkarten am unteren Rand des Bereichs befinden. Wenn sich Registerkarten am oberen Rand des Bereichs befinden, wird diese Variable mit einem leeren Rechteck gefüllt.

Hinweise

Diese Methode wird nur in Klassen verwendet, die von CDockablePane Registerkarten abgeleitet werden und über Registerkarten verfügen. Weitere Informationen finden Sie unter CTabbedPane::GetTabArea und CMFCOutlookBar::GetTabArea.

CDockablePane::GetTabbedPaneRTC

Gibt die Laufzeitklasseninformationen zu einem Registerkartenfenster zurück, das erstellt wird, wenn ein anderer Bereich an den aktuellen Bereich angedockt wird.

CRuntimeClass* GetTabbedPaneRTC() const;

Rückgabewert

Die Laufzeitklasseninformationen für den andockbaren Bereich.

Hinweise

Rufen Sie diese Methode auf, um die Laufzeitklasseninformationen für dynamisch erstellte Registerkartenbereiche abzurufen. Dies kann auftreten, wenn ein Benutzer einen Bereich auf die Untertitel eines anderen Bereichs zieht oder wenn Sie die CDockablePane::AttachToTabWnd Methode aufrufen, um programmgesteuert einen Registerkartenbereich aus zwei andockbaren Bereichen zu erstellen.

Sie können die Laufzeitklasseninformationen festlegen, indem Sie die CDockablePane::SetTabbedPaneRTC Methode aufrufen.

CDockablePane::HasAutoHideMode

Gibt an, ob ein Andockbereich in den Automatischen Modus umgeschaltet werden kann.

virtual BOOL HasAutoHideMode() const;

Rückgabewert

TRUEwenn der andockbare Bereich in den Automatischen Modus umgeschaltet werden kann; andernfalls . FALSE

Hinweise

Überschreiben Sie diese Methode in einer abgeleiteten Klasse, um den Autohidemodus für einen bestimmten andockbaren Bereich zu deaktivieren.

CDockablePane::HitTest

Gibt die Position in einem Bereich an, in dem der Benutzer mit der Maus klickt.

virtual int HitTest(
    CPoint point,
    BOOL bDetectCaption = FALSE);

Parameter

point
[in] Gibt den zu testden Punkt an.

bDetectCaption
[in] TRUE wenn HTCAPTION zurückgegeben werden soll, wenn sich der Punkt auf der Untertitel des Bereichs befindet; andernfalls . FALSE

Rückgabewert

Einer der folgenden Werte:

  • HTNOWHERE wenn point sich nicht im andockbaren Bereich befindet.

  • HTCLIENT wenn point sich im Clientbereich des andockbaren Bereichs befindet.

  • HTCAPTIONwenn point sich im bereich Untertitel des andockbaren Bereichs befindet.

  • AFX_HTCLOSE wenn point sich auf der Schaltfläche "Schließen" befindet.

  • HTMAXBUTTON wenn point sich auf der Schaltfläche "Anheften" befindet.

CDockablePane::IsAutohideAllEnabled

Gibt an, ob der Andockbereich und alle anderen Bereiche im Container in den Autohidemodus gewechselt werden können.

virtual BOOL IsAutohideAllEnabled() const;

Rückgabewert

TRUEwenn der andockbare Bereich und alle anderen Bereiche im Container in den Automatischen Modus gewechselt werden können; andernfalls . FALSE

Hinweise

Ein Benutzer aktiviert den Automatischen Modus, indem er auf die Docking-Pin-Taste klickt, während die STRG-TASTE gedrückt wird.

Rufen Sie die CDockablePane::EnableAutohideAll Methode auf, um dieses Verhalten zu aktivieren oder zu deaktivieren.

CDockablePane::IsAutoHideMode

Bestimmt, ob sich ein Bereich im Automatischen Modus befindet.

virtual BOOL IsAutoHideMode() const;

Rückgabewert

TRUEwenn sich der andockbare Bereich im Automatischen Modus befindet; andernfalls . FALSE

CDockablePane::IsDocked

Bestimmt, ob der aktuelle Bereich angedockt ist.

virtual BOOL IsDocked() const;

Rückgabewert

TRUE wenn der andockbare Bereich nicht zu einem Miniframefenster gehört oder in einem Miniframefenster mit einem anderen Bereich unverankert ist. FALSE wenn der Bereich ein untergeordnetes Element eines Miniframefensters ist und es keine anderen Bereiche gibt, die zum Miniframefenster gehören.

Hinweise

Rufen Sie CDockablePane::GetDefaultPaneDividerauf, um zu ermitteln, ob der Bereich an das Standard Framefenster angedockt ist. Wenn die Methode einen Nicht-ZeigerNULL zurückgibt, wird der Bereich am Standard Rahmenfenster angedockt.

CDockablePane::IsHideInAutoHideMode

Bestimmt das Verhalten eines Bereichs, der sich im Autohide-Modus befindet, wenn er durch Aufrufen CDockablePane::ShowPaneangezeigt (oder ausgeblendet) wird.

virtual BOOL IsHideInAutoHideMode() const;

Rückgabewert

TRUEwenn der andockbare Bereich ausgeblendet werden soll, wenn sich der Automatische Einblendenmodus befindet; andernfalls . FALSE

Hinweise

Wenn sich ein andockbarer Bereich im Automatischen Modus befindet, verhält es sich anders, wenn Sie den ShowPane Bereich ausblenden oder anzeigen. Dieses Verhalten wird vom statischen Element CDockablePane::m_bHideInAutoHideModegesteuert. Wenn dieses Element ist, wird TRUEder andockbare Bereich und die zugehörige Autohidesymbolleiste oder autohide-Schaltfläche ausgeblendet oder angezeigt, wenn Sie aufrufen ShowPane. Andernfalls wird der andockbare Bereich aktiviert oder deaktiviert, und die zugehörige Autohidesymbolleiste oder autohide-Schaltfläche ist immer sichtbar.

Überschreiben Sie diese Methode in einer abgeleiteten Klasse, um das Standardverhalten für einzelne Bereiche zu ändern.

Der Standardwert für m_bHideInAutoHideMode ist FALSE.

CDockablePane::IsInFloatingMultiPaneFrameWnd

Gibt an, ob sich der Bereich in einem Fenster mit mehreren Fenstern befindet ( CMultiPaneFrameWnd Class).

virtual BOOL IsInFloatingMultiPaneFrameWnd() const;

Rückgabewert

TRUEwenn sich der Bereich in einem Fenster mit mehreren Fenstern befindet; andernfalls . FALSE

Hinweise

CDockablePane::IsResizable

Gibt an, ob die Größe des Bereichs geändert werden kann.

virtual BOOL IsResizable() const;

Rückgabewert

TRUEwenn die Größe des Bereichs geändert werden kann; andernfalls . FALSE

Hinweise

Standardmäßig können andockbare Bereiche in der Größe geändert werden. Um die Größenänderung zu verhindern, überschreiben Sie diese Methode in einer abgeleiteten Klasse und geben sie zurück FALSE. Beachten Sie, dass ein FALSE Wert zu einem Fehler ASSERT führt.CPane::DockPane Verwenden Sie CDockingManager::AddPane stattdessen, um einen Bereich innerhalb eines übergeordneten Frames anzudocken.

Bereiche, die nicht geändert werden können, können weder den Gleitkommamodus noch den Auto-Hide-Modus eingeben und befinden sich immer am äußeren Rand des übergeordneten Frames.

CDockablePane::IsTabLocationBottom

Gibt an, ob sich Registerkarten oben oder unten im Bereich befinden.

virtual BOOL IsTabLocationBottom() const;

Rückgabewert

TRUE wenn sich Registerkarten am unteren Rand des Bereichs befinden; FALSE wenn sich Registerkarten am oberen Rand des Bereichs befinden.

Hinweise

Weitere Informationen finden Sie unter CTabbedPane::IsTabLocationBottom.

CDockablePane::IsTracked

Gibt an, ob ein Bereich vom Benutzer verschoben wird.

BOOL IsTracked() const;

Rückgabewert

TRUEwenn der Bereich verschoben wird; andernfalls . FALSE

CDockablePane::IsVisible

Bestimmt, ob der aktuelle Bereich sichtbar ist.

virtual BOOL IsVisible() const;

Rückgabewert

TRUEwenn der andockbare Bereich sichtbar ist; andernfalls . FALSE

Hinweise

Rufen Sie diese Methode auf, um zu ermitteln, ob ein andockbarer Bereich sichtbar ist. Sie können diese Methode anstelle des Aufrufens CWnd::IsWindowVisible oder Testens für die WS_VISIBLE Formatvorlage verwenden. Der zurückgegebene Sichtbarkeitsstatus hängt davon ab, ob der Autohide-Modus aktiviert oder deaktiviert ist, und vom Wert der CDockablePane::IsHideInAutoHideMode Eigenschaft.

Wenn sich der andockbare Bereich im Automatischen Modus befindet und IsHideInAutoHideMode der Sichtbarkeitszustand immer FALSEzurückgegeben FALSE wird.

Wenn sich der andockbare Bereich im Autohide-Modus befindet und IsHideInAutoHideMode der Sichtbarkeitszustand zurückgegeben TRUE wird, hängt vom Sichtbarkeitsstatus der zugehörigen Autohide-Symbolleiste ab.

Wenn sich der andockbare Bereich nicht im Autohidemodus befindet, wird der Sichtbarkeitszustand durch die CBasePane::IsVisible Methode bestimmt.

## CDockablePane::LoadState

Nur zur internen Verwendung Weitere Details finden Sie im Quellcode, der mfc sich im Ordner Ihrer Visual Studio-Installation befindet. Beispiel: %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

Gibt an, ob die Animation für das automatische Einblenden des andockbaren Bereichs deaktiviert ist.

AFX_IMPORT_DATA static BOOL m_bDisableAnimation;

CDockablePane::m_bHideInAutoHideMode

Bestimmt das Verhalten des Bereichs, wenn sich der Bereich im Autohidemodus befindet.

AFX_IMPORT_DATA static BOOL m_bHideInAutoHideMode;

Hinweise

Dieser Wert wirkt sich auf alle Andockbereiche in der Anwendung aus.

Wenn Sie dieses Element auf TRUE"Andockbare Bereiche" festlegen, werden beim Aufrufen CDockablePane::ShowPaneausgeblendet oder mit den zugehörigen automatischen Symbolleisten und Schaltflächen angezeigt.

Wenn Sie dieses Element auf FALSE" festlegen , werden andockbare Bereiche aktiviert oder deaktiviert, wenn Sie anrufen CDockablePane::ShowPane.

CDockablePane::m_nSlideSteps

Gibt die Animationsgeschwindigkeit des Bereichs an, wenn er sich im Automatischen Modus befindet.

AFX_IMPORT_DATA static int m_nSlideSteps;

Hinweise

Verringern Sie diesen Wert, um einen schnelleren Animationseffekt zu erzielen. Erhöhen Sie diesen Wert für einen langsameren Animationseffekt.

CDockablePane::OnAfterChangeParent

Weitere Details finden Sie im Quellcode, der mfc sich im Ordner Ihrer Visual Studio-Installation befindet. Beispiel: %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc.

virtual void OnAfterChangeParent(CWnd* pWndOldParent);

Parameter

[in] pWndOldParent\

Hinweise

CDockablePane::OnAfterDockFromMiniFrame

Wird vom Framework aufgerufen, wenn eine unverankerte Andockleiste an einem Rahmenfenster verankert ist.

virtual void OnAfterDockFromMiniFrame();

Hinweise

Standardmäßig hat diese Methode keine Auswirkungen.

CDockablePane::OnBeforeChangeParent

Das Framework ruft diese Methode auf, bevor sie das übergeordnete Element des Bereichs ändert.

virtual void OnBeforeChangeParent(
    CWnd* pWndNewParent,
    BOOL bDelay = FALSE);

Parameter

pWndNewParent
[in] Ein Zeiger auf das neue übergeordnete Fenster.

bDelay
[in] BOOL, das angibt, ob die Neuberechnung des Andocklayouts verzögert werden soll, wenn der Bereich abgedockt ist. Weitere Informationen finden Sie unter CDockablePane::UndockPane.

Hinweise

Wenn der Bereich angedockt ist und das neue übergeordnete Element das Andocken nicht zulässt, wird der Bereich durch diese Methode aufgehoben.

Wenn der Bereich in ein Dokument mit Registerkarten konvertiert wird, speichert diese Methode die zuletzt verwendete Andockposition. Das Framework verwendet die zuletzt verwendete Andockposition, um die Position des Bereichs wiederherzustellen, wenn er wieder in einen angedockten Zustand konvertiert wird.

CDockablePane::OnBeforeFloat

Das Framework ruft diese Methode auf, bevor ein Bereich in einen unverankerten Zustand wechselt.

virtual BOOL OnBeforeFloat(
    CRect& rectFloat,
    AFX_DOCK_METHOD dockMethod);

Parameter

rectFloat
[in] Gibt die Position und Größe des Bereichs an, wenn er sich in einem unverankerten Zustand befindet.

dockMethod
[in] Gibt die Docking-Methode an. Eine Liste möglicher Werte finden Sie CPane::DockPane unter

Rückgabewert

TRUEwenn der Bereich eingefloben werden kann; andernfalls . FALSE

Hinweise

Diese Methode wird vom Framework aufgerufen, wenn ein Bereich im Hinblick auf den Gleitkommabereich angezeigt wird. Sie können diese Methode in einer abgeleiteten Klasse überschreiben, wenn Sie eine Verarbeitung durchführen möchten, bevor der Bereich schwebt.

CDockablePane::OnPressButtons

Wird aufgerufen, wenn der Benutzer eine andere schaltfläche Untertitel als die AFX_HTCLOSE Schaltflächen und AFX_HTMAXBUTTON Schaltflächen drückt.

virtual void OnPressButtons(UINT nHit);

Parameter

nHit
[in] Dieser Parameter wird nicht verwendet.

Hinweise

Wenn Sie der Untertitel eines andockbaren Bereichs eine benutzerdefinierte Schaltfläche hinzufügen, überschreiben Sie diese Methode, um Benachrichtigungen zu empfangen, wenn ein Benutzer die Schaltfläche drückt.

CDockablePane::OnSlide

Wird vom Framework aufgerufen, um den Bereich zu animieren, wenn er sich im Automatischen Modus befindet.

virtual void OnSlide(BOOL bSlideOut);

Parameter

bSlideOut
[in] TRUE um den Bereich anzuzeigen; FALSE um den Bereich auszublenden.

Hinweise

Überschreiben Sie diese Methode in einer abgeleiteten Klasse, um benutzerdefinierte Autohideeffekte zu implementieren.

CDockablePane::RemoveFromDefaultPaneDividier

Das Framework ruft diese Methode auf, wenn ein Bereich abgedocken wird.

void RemoveFromDefaultPaneDividier();

Hinweise

Diese Methode legt die Standardbereichstrennlinie auf NULL den Bereich fest und entfernt den Bereich aus seinem Container.

CDockablePane::ReplacePane

Ersetzt den Bereich durch einen angegebenen Bereich.

BOOL ReplacePane(
    CDockablePane* pBarToReplaceWith,
    AFX_DOCK_METHOD dockMethod,
    BOOL bRegisterWithFrame = FALSE);

Parameter

pBarToReplaceWith
[in] Ein Zeiger auf einen andockbaren Bereich.

dockMethod
[in] Wird nicht verwendet.

bRegisterWithFrame
[in] Wenn TRUEder neue Bereich beim Andock-Manager des übergeordneten Bereichs des alten Bereichs registriert ist. Der neue Bereich wird am Index des alten Bereichs in der Liste der Bereiche eingefügt, die vom Andock-Manager Standard enthalten sind.

Rückgabewert

TRUEwenn der Ersatz erfolgreich ist; andernfalls . FALSE

CDockablePane::RestoreDefaultPaneDivider

Wenn ein Bereich deserialisiert wird, ruft das Framework diese Methode auf, um die Standardbereichstrennlinie wiederherzustellen.

void RestoreDefaultPaneDivider();

Hinweise

Die wiederhergestellte Standardbereichstrennlinie ersetzt, sofern vorhanden, die aktuelle Standardbereichstrennlinie.

CDockablePane::SetAutoHideMode

Schaltet den Andockbereich zwischen sichtbarem und automatischem Einblenden um.

virtual CMFCAutoHideBar* SetAutoHideMode(
    BOOL bMode,
    DWORD dwAlignment,
    CMFCAutoHideBar* pCurrAutoHideBar = NULL,
    BOOL bUseTimer = TRUE);

Parameter

bMode
[in] TRUE zum Aktivieren des Autohidemodus; FALSE um den regulären Andockmodus zu aktivieren.

dwAlignment
[in] Gibt die Ausrichtung des zu erstellenden Autohidebereichs an.

pCurrAutoHideBar
[in, out] Ein Zeiger auf die aktuelle Autohide-Symbolleiste. Kann NULL sein.

bUseTimer
[in] Gibt an, ob der Autohide-Effekt verwendet werden soll, wenn der Benutzer den Bereich in den Automatischen Modus wechselt oder den Bereich sofort ausblenden soll.

Rückgabewert

Die Autohide-Symbolleiste, die als Ergebnis des Wechsels zum Autohide-Modus erstellt wurde, oder NULL.

Hinweise

Das Framework ruft diese Methode auf, wenn ein Benutzer auf die Pin-Taste klickt, um den andockbaren Bereich in den Autohidemodus oder in den regulären Andockmodus zu wechseln.

Rufen Sie diese Methode auf, um einen andockbaren Bereich programmgesteuert in den Autohidemodus zu wechseln. Der Bereich muss an das Standard Rahmenfenster angedockt werden ( CDockablePane::GetDefaultPaneDivider muss einen gültigen Zeiger auf die CPaneDivider).

CDockablePane::SetAutoHideParents

Legt die Schaltfläche zum automatischen Ausblenden und die Symbolleiste für das automatische Ausblenden für den Bereich fest.

void SetAutoHideParents(
    CMFCAutoHideBar* pToolBar,
    CMFCAutoHideButton* pBtn);

Parameter

pToolBar
[in] Zeigen Sie auf eine Symbolleiste zum automatischen Ausblenden.

pBtn
[in] Zeiger auf eine Schaltfläche zum automatischen Ausblenden.

CDockablePane::SetLastPercentInPaneContainer

Legt den Prozentsatz des Platzes fest, den ein Bereich in seinem Container belegt.

void SetLastPercentInPaneContainer(int n);

Parameter

n
[in] Ein int Wert, der den Prozentsatz des Platzes angibt, den der Bereich in seinem Container belegt.

Hinweise

Das Framework passt den Bereich an, um den neuen Wert zu verwenden, wenn das Layout neu berechnet wird.

CDockablePane::SetRestoredDefaultPaneDivider

Legt die wiederhergestellte Standardbereichstrennlinie fest.

void SetRestoredDefaultPaneDivider(HWND hRestoredSlider);

Parameter

hRestoredSlider
[in] Ein Ziehpunkt für eine Bereichstrennlinie (Schieberegler).

Hinweise

Eine wiederhergestellte Standardbereichstrennlinie wird abgerufen, wenn ein Bereich deserialisiert wird. Weitere Informationen finden Sie unter CDockablePane::RestoreDefaultPaneDivider.

CDockablePane::SetTabbedPaneRTC

Legt die Laufzeitklasseninformationen für ein Registerkartenfenster fest, das erstellt wird, wenn zwei Bereiche miteinander andocken.

void SetTabbedPaneRTC(CRuntimeClass* pRTC);

Parameter

pRTC
[in] Die Laufzeitklasseninformationen für den Registerkartenbereich.

Hinweise

Rufen Sie diese Methode auf, um die Laufzeitklasseninformationen für dynamisch erstellte Registerkartenbereiche festzulegen. Dies kann auftreten, wenn ein Benutzer einen Bereich auf die Untertitel eines anderen Bereichs zieht oder wenn Sie die CDockablePane::AttachToTabWnd Methode aufrufen, um programmgesteuert einen Registerkartenbereich aus zwei andockbaren Bereichen zu erstellen.

Die Standardlaufzeitklasse wird gemäß dem dwTabbedStyle Parameter von CDockablePane::Create und .CDockablePane::CreateEx Um die neuen Registerkartenbereiche anzupassen, leiten Sie Ihren Kurs von einer der folgenden Klassen ab:

Rufen Sie dann diese Methode mit dem Zeiger auf die Laufzeitklasseninformationen auf.

CDockablePane::ShowPane

Blendet einen Bereich ein oder aus.

virtual void ShowPane(
    BOOL bShow,
    BOOL bDelay,
    BOOL bActivate);

Parameter

bShow
[in] TRUE um den Bereich anzuzeigen; FALSE um den Bereich auszublenden.

bDelay
[in] TRUE die Anpassung des Docking-Layouts zu verzögern; FALSE um das Andocklayout sofort anzupassen.

bActivate
[in] TRUE um den Bereich zu aktivieren, wenn er angezeigt wird; andernfalls . FALSE

Hinweise

Rufen Sie diese Methode anstelle des CWnd::ShowWindow Ein- oder Ausblendens angedockbarer Bereiche auf.

CDockablePane::Slide

Animates a pane that is in autohide mode.

virtual void Slide(
    BOOL bSlideOut,
    BOOL bUseTimer = TRUE);

Parameter

bSlideOut
[in] TRUE um den Bereich anzuzeigen; FALSE um den Bereich auszublenden.

bUseTimer
[in] TRUE um den Bereich mit dem Autohide-Effekt ein- oder auszublenden; FALSE um den Bereich sofort ein- oder auszublenden.

Hinweise

Das Framework ruft diese Methode auf, um einen Bereich zu animieren, der sich im Automatischen Modus befindet.

Diese Methode verwendet den CDockablePane::m_nSlideDefaultTimeOut Wert, um das Timeout für den Folieneffekt zu bestimmen. Der Standardwert für das Timeout ist 1. Wenn Sie den Autohide-Algorithmus anpassen, ändern Sie dieses Element, um das Timeout zu ändern.

CDockablePane::ToggleAutoHide

Schaltet den Bereich zwischen dem immer sichtbaren und automatischen Ausblendenmodus um.

virtual void ToggleAutoHide();

Hinweise

Mit dieser Methode wird der Modus für das automatische Ausblenden für den Bereich durch Aufrufen CDockablePane::SetAutoHideModeumgeschaltet.

CDockablePane::UndockPane

Hebt einen Bereich entweder vom Standard Rahmenfenster oder einem Miniframefenstercontainer ab.

virtual void UndockPane(BOOL bDelay = FALSE);

Parameter

bDelay
[in] TRUE die Berechnung des Docking-Layouts zu verzögern; FALSE um das Andocklayout sofort neu zu berechnen.

Hinweise

Rufen Sie diese Methode auf, um einen Bereich aus dem Standard Framefenster oder einem Container mit mehreren Miniframefenstern abzudocken (ein Bereich, der in einem einzelnen Miniframefenster mit anderen Bereichen unverankert ist).

Sie müssen einen Bereich rückgängig machen, bevor Sie einen externen Vorgang ausführen, der nicht von der CDockingManager. Beispielsweise müssen Sie einen Bereich rückgängig machen, um ihn programmgesteuert von einer Position an eine andere zu verschieben.

Das Framework hebt Bereiche automatisch ab, bevor sie zerstört werden.

Siehe auch

Hierarchiediagramm
Klassen
CPane Klasse