Freigeben über


CAutoHideDockSite-Klasse

Die CAutoHideDockSite CDockSite-Klasse wird erweitert, um automatisch auszublendende Dockbereiche zu implementieren.

Syntax

class CAutoHideDockSite : public CDockSite

Member

Öffentliche Konstruktoren

Name Beschreibung
Name Beschreibung
CAutoHideDockSite::CAutoHideDockSite Erstellt ein CAutoHideDockSite-Objekt.
CAutoHideDockSite::~CAutoHideDockSite Destruktor.

Öffentliche Methoden

Name Beschreibung
Name Beschreibung
CAutoHideDockSite::AllowShowOnPaneMenu Gibt an, ob die CAutoHideDockSite Im Bereichsmenü angezeigt wird.
CAutoHideDockSite::CanAcceptPane Bestimmt, ob ein Basisbereichsobjekt von der CMFCAutoHideBar-Klasse abgeleitet wird.
CAutoHideDockSite::D ockPane Dockt einen Bereich an dieses CAuotHideDockSite Objekt an.
CAutoHideDockSite::GetAlignRect Ruft die Größe der Dockwebsite in Bildschirmkoordinaten ab.
CAutoHideDockSite::RepositionPanes Beschreibt den Bereich auf dem CAutoHideDockSite Bereich mit den globalen Rändern und dem Schaltflächenabstand.
CAutoHideDockSite::SetOffsetLeft Legt den Rand auf der linken Seite der Andockleiste fest.
CAutoHideDockSite::SetOffsetRight Legt den Rand auf der rechten Seite der Andockleiste fest.
CAutoHideDockSite::UnSetAutoHideMode Ruft CMFCAutoHideBar::UnSetAutoHideMode für Objekte auf der CAutoHideDockSite.

Datenelemente

Name Beschreibung
Name Beschreibung
CAutoHideDockSite::m_nExtraSpace Definiert die Größe des Abstands zwischen den Symbolleisten und dem Rand der Docking-Leiste. Dieser Abstand wird abhängig von der Ausrichtung für den Dockbereich vom linken Oder vom oberen Rand gemessen.

Hinweise

Wenn Sie CFrameWndEx::EnableAutoHidePanes aufrufen, erstellt das Framework automatisch ein CAutoHideDockSite Objekt. In den meisten Fällen sollten Sie diese Klasse nicht direkt instanziieren oder verwenden müssen.

Die Dockingleiste ist die Lücke zwischen der linken Seite des Dockbereichs und der linken Seite der CMFCAutoHideButton-Klasse.

Vererbungshierarchie

CObject

CCmdTarget

CWnd

CBasePane

CDockSite

Beispiel

Im folgenden Beispiel wird das Abrufen eines CAutoHideDockSite Objekts aus einem CMFCAutoHideBar Objekt und das Festlegen der linken und rechten Seitenränder der Dockingleiste veranschaulicht.

CAutoHideDockSite *pParentDockBar = DYNAMIC_DOWNCAST(CAutoHideDockSite, pParentBar->GetParentDockSite());
pParentDockBar->SetOffsetLeft(10);
pParentDockBar->SetOffsetRight(10);

Anforderungen

Header: afxautohidedocksite.h

CAutoHideDockSite::CanAcceptPane

Bestimmt, ob ein Basisbereich ein CMFCAutoHideBar -Objekt oder abgeleitet von CMFCAutoHideBar.

virtual BOOL CanAcceptPane(const CBasePane* pBar) const;

Parameter

pBar
[in] Der Basisbereich, den das Framework testet.

Rückgabewert

TRUE, wenn pBar von CMFCAutoHideBar; Andernfalls FALSE.

Hinweise

Wenn ein Basisbereichsobjekt abgeleitet CMFCAutoHideBarist, kann es ein CAutoHideDockSite.

CAutoHideDockSite::D ockPane

Verankert einen Bereich an dieses CAutoHideDockSite -Objekt.

virtual void DockPane(
    CPane* pWnd,
    AFX_DOCK_METHOD dockMethod,
    LPRECT lpRect = NULL);

Parameter

pWnd
[in] Der Bereich, den das Framework andockt.

dockMethod
[in] Andockoptionen für den Bereich.

lpRect
[in] Ein Rechteck, das die Grenzen für den angedockten Bereich angibt.

Hinweise

Die Standardimplementierung verwendet nicht den Parameter dockMethod, der für die zukünftige Verwendung bereitgestellt wird.

Wenn lpRect NULL ist, platziert das Framework den Bereich an der Standardposition auf der Dockwebsite. Wenn der Dockstandort horizontal ist, befindet sich die Standardposition ganz links am Dockstandort. Andernfalls befindet sich der Standardspeicherort am oberen Rand des Dockstandorts.

CAutoHideDockSite::GetAlignRect

Ruft die Größe der Dockwebsite in Bildschirmkoordinaten ab.

void GetAlignRect(CRect& rect) const;

Parameter

rect
[in] Ein Verweis auf ein Rechteck. Die Methode speichert die Größe der Dockwebsite in diesem Rechteck.

Hinweise

Das Rechteck wird für die Offsetränder angepasst, sodass sie nicht enthalten sind.

CAutoHideDockSite::m_nExtraSpace

Die Größe des Abstands zwischen den Rändern der CAutoHideDockSite-Klasse und den CMFCAutoHideBar-Klassenobjekten .

static int m_nExtraSpace;

Hinweise

Wenn eine CMFCAutoHideBar an einer CAutoHideDockSiteStation angedockt ist, sollte sie nicht den gesamten Dockplatz belegen. Diese globale Variable steuert den zusätzlichen Abstand zwischen dem linken oder oberen Rand des CMFCAutoHideBar und dem entsprechenden CAutoHideDockSite Rand. Ob der obere oder linke Rand verwendet wird, hängt von der aktuellen Ausrichtung ab.

CAutoHideDockSite::SetOffsetLeft

Legt den Rand auf der linken Seite der Andockleiste fest.

void SetOffsetLeft(int nOffset);

Parameter

nOffset
[in] Der neue Offset.

Hinweise

CMFCAutoHideBar-Objekte werden statisch für das CAutoHideDockSite Objekt positioniert. Dies bedeutet, dass der Benutzer die Position von CMFCAutoHideBar Objekten nicht manuell ändern kann. Die SetOffsetLeft Methode steuert den Abstand zwischen der linken Seite von links CMFCAutoHideBar und der linken Seite der .CAutoHideDockSite

CAutoHideDockSite::SetOffsetRight

Legt den Rand auf der rechten Seite der Andockleiste fest.

void SetOffsetRight(int nOffset);

Parameter

nOffset
[in] Der neue Offset.

Hinweise

CMFCAutoHideBar-Objekte werden statisch für das CAutoHideDockSite Objekt positioniert. Dies bedeutet, dass der Benutzer die Position der CMFCAutoHideBar Objekte nicht manuell ändern kann. Die SetOffsetRight Methode steuert den Abstand zwischen der rechten Seite der rechten CMFCAutoHideBar und der rechten Seite der .CAutoHideDockSite

CAutoHideDockSite::RepositionPanes

Beschreibt die Bereiche auf der CAutoHideDockSite neu.

virtual void RepositionPanes(CRect& rectNewClientArea);

Parameter

rectNewClientArea
[Eingabe] Ein reservierter Wert

Hinweise

Die Standardimplementierung verwendet nicht rectNewClientArea. Es werden die Bereiche mit den globalen Symbolleistenrändern und dem Schaltflächenabstand neu gezeichnet.

CAutoHideDockSite::UnSetAutoHideMode

Ruft CMFCAutoHideBar::UnSetAutoHideMode für Objekte auf der Dockwebsite auf.

void UnSetAutoHideMode(CMFCAutoHideBar* pAutoHideToolbar);

Parameter

pAutoHideToolbar
[in] Ein Zeiger auf einen CMFCAutoHideBar-Objektbereich , der sich auf der CAutoHideDockSite.

Hinweise

Diese Methode sucht nach der Zeile, die pAutoHideToolbar enthält. Es ruft alle CMFCAutoHideBar Objekte in dieser Zeile aufCMFCAutoHideBar.UnSetAutoHideMode. Wenn pAutoHideToolbar nicht gefunden wird oder NULL ist, ruft CMFCAutoHideBar.UnSetAutoHideMode diese Methode alle Objekte auf der CMFCAutoHideBar CAutoHideDockSite.

Siehe auch

Hierarchiediagramm
Klassen
CDockSite-Klasse