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
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 CMFCAutoHideBar
klasy .
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 CMFCAutoHideBar
elementu ; FAŁSZ w przeciwnym razie.
Uwagi
Jeśli obiekt okienka podstawowego pochodzi z CMFCAutoHideBar
klasy , może zawierać CAutoHideDockSite
element .
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
.