Udostępnij za pośrednictwem


Klasa CAutoHideDockSite

Rozszerzenie CAutoHideDockSite klasy CDockSite w celu zaimplementowania okienek dokowania automatycznego ukrywania.

Składnia

class CAutoHideDockSite : public CDockSite

Elementy członkowskie

Konstruktory publiczne

Nazwa/nazwisko Opis
Nazwa/nazwisko opis
CAutoHideDockSite::CAutoHideDockSite CAutoHideDockSite Tworzy obiekt.
CAutoHideDockSite::~CAutoHideDockSite Destruktor.

Metody publiczne

Nazwa/nazwisko Opis
Nazwa/nazwisko opis
CAutoHideDockSite::AllowShowOnPaneMenu Wskazuje, czy CAutoHideDockSite element jest wyświetlany w menu okienka.
CAutoHideDockSite::CanAcceptPane Określa, czy obiekt okienka podstawowego pochodzi z klasy CMFCAutoHideBar.
CAutoHideDockSite::D ockPane Zadokuje okienko do tego CAuotHideDockSite obiektu.
CAutoHideDockSite::GetAlignRect Pobiera rozmiar witryny docku we współrzędnych ekranu.
CAutoHideDockSite::RepositionPanes Ponownie rysuje okienko na marginesach CAutoHideDockSite globalnych i odstępach przycisków.
CAutoHideDockSite::SetOffsetLeft Ustawia margines po lewej stronie paska dokowania.
CAutoHideDockSite::SetOffsetRight Ustawia margines po prawej stronie paska dokowania.
CAutoHideDockSite::UnSetAutoHideMode Wywołuje polecenie CMFCAutoHideBar::UnSetAutoHideMode dla obiektów w obiekcie CAutoHideDockSite.

Składowe danych

Nazwa/nazwisko Opis
Nazwa/nazwisko opis
CAutoHideDockSite::m_nExtraSpace Definiuje rozmiar odstępu między paskami narzędzi a krawędzią paska dokowania. Ten obszar jest mierzony z lewej krawędzi lub górnej krawędzi, w zależności od wyrównania miejsca dokowania.

Uwagi

Podczas wywoływania obiektu CFrameWndEx::EnableAutoHidePanes platforma automatycznie tworzy CAutoHideDockSite obiekt. W większości przypadków nie należy utworzyć wystąpienia ani bezpośrednio użyć tej klasy.

Pasek dokowania to odstęp między lewą stroną okienka dokowania a lewą stroną klasy CMFCAutoHideButton.

Hierarchia dziedziczenia

Obiekt CObject

CCmdTarget

CWnd

CBasePane

CDockSite

Przykład

W poniższym przykładzie pokazano, jak pobrać CAutoHideDockSite obiekt z CMFCAutoHideBar obiektu oraz jak ustawić lewe i prawe marginesy paska dokowania.

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

Wymagania

Nagłówek: afxautohidedocksite.h

CAutoHideDockSite::CanAcceptPane

Określa, czy okienko podstawowe jest obiektem CMFCAutoHideBar , czy pochodzi z CMFCAutoHideBarklasy .

virtual BOOL CanAcceptPane(const CBasePane* pBar) const;

Parametry

Pasek p
[in] Okienko podstawowe, które testuje struktura.

Wartość zwracana

Wartość TRUE, jeśli pBar pochodzi z CMFCAutoHideBarelementu ; FAŁSZ w przeciwnym razie.

Uwagi

Jeśli obiekt okienka podstawowego pochodzi z CMFCAutoHideBarklasy , może zawierać CAutoHideDockSiteelement .

CAutoHideDockSite::D ockPane

Zadokuje okienko do tego obiektu CAutoHideDockSite .

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

Parametry

pWnd
[in] Okienko, w ramach którego jest zadokowany obszar platformy.

dockMethod
[in] Opcje dokowania okienka.

lpRect
[in] Prostokąt określający granice okienka zadokowanego.

Uwagi

Domyślna implementacja nie używa parametru dockMethod, który jest dostarczany do użytku w przyszłości.

Jeśli wartość lpRect ma wartość NULL, platforma umieszcza okienko w domyślnej lokalizacji w lokacji docku. Jeśli lokacja docka jest pozioma, domyślna lokalizacja znajduje się po lewej stronie witryny docku. W przeciwnym razie lokalizacja domyślna znajduje się w górnej części witryny docku.

CAutoHideDockSite::GetAlignRect

Pobiera rozmiar witryny docku we współrzędnych ekranu.

void GetAlignRect(CRect& rect) const;

Parametry

Rect
[in] Odwołanie do prostokąta. Metoda przechowuje rozmiar witryny docku w tym prostokątze.

Uwagi

Prostokąt jest dostosowywany dla marginesów przesunięcia, aby nie były uwzględniane.

CAutoHideDockSite::m_nExtraSpace

Rozmiar odstępu między krawędziami klasy CAutoHideDockSite i obiektów klasy CMFCAutoHideBar.

static int m_nExtraSpace;

Uwagi

Gdy obiekt CMFCAutoHideBar jest zadokowany w obiekcie CAutoHideDockSite, nie powinien zajmować całej lokacji docku. Ta zmienna globalna steruje dodatkową przestrzenią między lewą lub górną krawędzią CMFCAutoHideBar i odpowiednią CAutoHideDockSite krawędzią. To, czy jest używana górna czy lewa krawędź, zależy od bieżącego wyrównania.

CAutoHideDockSite::SetOffsetLeft

Ustawia margines po lewej stronie paska dokowania.

void SetOffsetLeft(int nOffset);

Parametry

nOffset
[in] Nowe przesunięcie.

Uwagi

Obiekty CMFCAutoHideBar są rozmieszczone statycznie na CAutoHideDockSite obiekcie. Oznacza to, że użytkownik nie może ręcznie zmienić lokalizacji CMFCAutoHideBar obiektów. Metoda SetOffsetLeft steruje odstępami między lewą stroną lewej CMFCAutoHideBar i lewej strony obiektu CAutoHideDockSite.

CAutoHideDockSite::SetOffsetRight

Ustawia margines po prawej stronie paska dokowania.

void SetOffsetRight(int nOffset);

Parametry

nOffset
[in] Nowe przesunięcie.

Uwagi

Obiekty CMFCAutoHideBar są rozmieszczone statycznie na CAutoHideDockSite obiekcie. Oznacza to, że użytkownik nie może ręcznie zmienić lokalizacji CMFCAutoHideBar obiektów. Metoda SetOffsetRight steruje odstępami między prawą stroną prawej CMFCAutoHideBar i prawej strony obiektu CAutoHideDockSite.

CAutoHideDockSite::RepositionPanes

Ponownie rysuje okienka w witrynie CAutoHideDockSite.

virtual void RepositionPanes(CRect& rectNewClientArea);

Parametry

rectNewClientArea
[in] Wartość zarezerwowana.

Uwagi

Domyślna implementacja nie używa polecenia rectNewClientArea. Ponownie rysuje okienka z globalnymi marginesami paska narzędzi i odstępami przycisków.

CAutoHideDockSite::UnSetAutoHideMode

Wywołuje metodę CMFCAutoHideBar::UnSetAutoHideMode dla obiektów w witrynie docku.

void UnSetAutoHideMode(CMFCAutoHideBar* pAutoHideToolbar);

Parametry

pAutoHideToolbar
[in] Wskaźnik do okienka obiektu CMFCAutoHideBar znajdujący się w obiekcie CAutoHideDockSite.

Uwagi

Ta metoda wyszukuje wiersz zawierający element pAutoHideToolbar. Wywołuje CMFCAutoHideBar.UnSetAutoHideMode on wszystkie CMFCAutoHideBar obiekty w tym wierszu. Jeśli element pAutoHideToolbar nie został znaleziony lub ma wartość NULL, ta metoda wywołuje CMFCAutoHideBar.UnSetAutoHideMode wszystkie CMFCAutoHideBar obiekty w obiekcie CAutoHideDockSite.

Zobacz też

Wykres hierarchii
Klasy
Klasa CDockSite