CDockablePane
– třída
Implementuje podokno, které se dá ukotvit na webu docku nebo zahrnout do podokna s kartami.
Syntax
class CDockablePane : public CPane
Členové
Veřejné konstruktory
Jméno | Popis |
---|---|
CDockablePane::CDockablePane |
Vytvoří a inicializuje objekt CDockablePane . |
Veřejné metody
Jméno | Popis |
---|---|
CDockablePane::AttachToTabWnd |
Připojí podokno k jinému podoknu. Tím se vytvoří podokno s kartami. |
CDockablePane::CalcFixedLayout |
Vrátí velikost obdélníku podokna. |
CDockablePane::CanAcceptMiniFrame |
Určuje, zda lze zadaný minirámeček ukotvit do podokna. |
CDockablePane::CanAcceptPane |
Určuje, zda lze do aktuálního podokna ukotvit další podokno. |
CDockablePane::CanAutoHide |
Určuje, zda podokno podporuje režim automatického skrytí. (Přepsání CBasePane::CanAutoHide .) |
CDockablePane::CanBeAttached |
Určuje, zda je možné aktuální podokno ukotvit do jiného podokna. |
CDockablePane::ConvertToTabbedDocument |
Převede jedno nebo více dokovatelných podoken na dokumenty s kartami MDI. |
CDockablePane::CopyState |
Zkopíruje stav ukotveného podokna. |
CDockablePane::Create |
Vytvoří ovládací prvek Windows a připojí ho k objektu CDockablePane . |
CDockablePane::CreateDefaultPaneDivider |
Vytvoří výchozí oddělovač pro podokno, protože je ukotvený do okna rámečku. |
CDockablePane::CreateEx |
Vytvoří ovládací prvek Windows a připojí ho k objektu CDockablePane . |
CDockablePane::CreateTabbedPane |
Vytvoří podokno s kartami z aktuálního podokna. |
CDockablePane::DockPaneContainer |
Ukotví kontejner do podokna. |
CDockablePane::DockPaneStandard |
Ukotví podokno pomocí ukotvení obrysu (standardní). |
CDockablePane::DockToFrameWindow |
Používá se interně. K ukotvení podokna použijte CPane::DockPane nebo CDockablePane::DockToWindow . |
CDockablePane::DockToRecentPos |
Ukotví podokno do poslední uložené pozice ukotvení. |
CDockablePane::DockToWindow |
Ukotví jedno dokovací podokno do jiného ukotvení. |
CDockablePane::EnableAutohideAll |
Povolí nebo zakáže režim automatického skrytí pro toto podokno společně s dalšími podokny v kontejneru. |
CDockablePane::EnableGripper |
Zobrazí nebo skryje titulek (úchyt). |
CDockablePane::GetAHRestoredRect |
Určuje umístění podokna, když je viditelné v režimu automatického skrytí. |
CDockablePane::GetAHSlideMode |
Načte režim automatického skrytí snímku pro podokno. |
CDockablePane::GetAutoHideButton |
Používá se interně. |
CDockablePane::GetAutoHideToolBar |
Používá se interně. |
CDockablePane::GetCaptionHeight |
Vrátí výšku aktuálního titulku. |
CDockablePane::GetDefaultPaneDivider |
Vrátí výchozí oddělovač podokna pro kontejner podokna. |
CDockablePane::GetDockingStatus |
Určuje možnost ukotvení podokna na základě zadaného umístění ukazatele. |
CDockablePane::GetDragSensitivity |
Vrátí citlivost přetažení ukotveného podokna. |
CDockablePane::GetLastPercentInPaneContainer |
Načte procento místa, které podokno zabírá v rámci kontejneru. |
CDockablePane::GetTabArea |
Načte oblast karty pro podokno. |
CDockablePane::GetTabbedPaneRTC |
Vrátí informace o třídě modulu runtime o okně s kartami vytvořeném při ukotvení jiného podokna k aktuálnímu podoknu. |
CDockablePane::HasAutoHideMode |
Určuje, jestli je možné dokovací podokno přepnout do režimu automatického skrytí. |
CDockablePane::HitTest |
Určuje konkrétní umístění v podokně, kde uživatel klikne myší. |
CDockablePane::IsAccessibilityCompatible |
Používá se interně. |
CDockablePane::IsAutohideAllEnabled |
Určuje, zda lze ukotvené podokno a všechna ostatní podokna v kontejneru umístit do režimu automatického skrytí. |
CDockablePane::IsAutoHideMode |
Určuje, zda je podokno v režimu automatického skrytí. |
CDockablePane::IsChangeState |
Používá se interně. |
CDockablePane::IsDocked |
Určuje, jestli je aktuální podokno ukotvené. |
CDockablePane::IsHideInAutoHideMode |
Určuje chování podokna, které je v režimu automatického skrytí, pokud je zobrazeno (nebo skryté) voláním ShowPane . |
CDockablePane::IsInFloatingMultiPaneFrameWnd |
Určuje, jestli je podokno v okně s rámečkem s více podokny. |
CDockablePane::IsResizable |
Určuje, jestli je podokno možné měnit velikost. |
CDockablePane::IsTabLocationBottom |
Určuje, jestli se karty nacházejí v horní nebo dolní části podokna. |
CDockablePane::IsTracked |
Určuje, jestli uživatel přetahuje podokno. |
CDockablePane::IsVisible |
Určuje, zda je aktuální podokno viditelné. |
CDockablePane::LoadState |
Používá se interně. |
CDockablePane::OnAfterChangeParent |
Volá se rozhraním, když se změnil nadřazený prvek podokna. (Přepsání CPane::OnAfterChangeParent .) |
CDockablePane::OnAfterDockFromMiniFrame |
Volá se podle architektury, když plovoucí ukotvený pruh dokuje v okně rámečku. |
CDockablePane::OnBeforeChangeParent |
Volá se rozhraním, když se chystá změnit nadřazený prvek podokna. (Přepsání CPane::OnBeforeChangeParent .) |
CDockablePane::OnBeforeFloat |
Volá se rozhraním, když se chystá plovoucí podokno. (Přepsání CPane::OnBeforeFloat .) |
CDockablePane::RemoveFromDefaultPaneDividier |
Architektura volá tuto metodu, když je podokno uvolněno. |
CDockablePane::ReplacePane |
Nahradí podokno zadaným podoknem. |
CDockablePane::RestoreDefaultPaneDivider |
Architektura volá tuto metodu jako podokno je deserializováno k obnovení výchozího oddělovače podokna. |
CDockablePane::SaveState |
Používá se interně. |
CDockablePane::Serialize |
Serializuje podokno. (Přepsání CBasePane::Serialize .) |
CDockablePane::SetAutoHideMode |
Přepíná dokovací podokno mezi viditelným a automatickým skrytím režimu. |
CDockablePane::SetAutoHideParents |
Nastaví tlačítko automatického skrytí a automaticky skryje panel nástrojů pro podokno. |
CDockablePane::SetDefaultPaneDivider |
Používá se interně. |
CDockablePane::SetLastPercentInPaneContainer |
Nastaví procento místa, které podokno zabírá v rámci kontejneru. |
CDockablePane::SetResizeMode |
Používá se interně. |
CDockablePane::SetRestoredDefaultPaneDivider |
Nastaví obnovený výchozí oddělovač podokna. |
CDockablePane::SetTabbedPaneRTC |
Nastaví informace o třídě modulu runtime pro okno s kartami, které se vytvoří, když se obě podokna ukotví dohromady. |
CDockablePane::ShowPane |
Zobrazí nebo skryje podokno. |
CDockablePane::Slide |
Zobrazí nebo skryje podokno s posuvnou animací, která se zobrazí jenom v režimu automatického skrytí. |
CDockablePane::ToggleAutoHide |
Přepíná režim automatického skrytí. (Přepsání CPane::ToggleAutoHide .) |
CDockablePane::UndockPane |
Vrátí podokno z okna hlavního rámce nebo kontejneru okna miniframe. |
CDockablePane::UnSetAutoHideMode |
Používá se interně. Pokud chcete nastavit režim automatického skrytí, použijte CDockablePane::SetAutoHideMode |
Chráněné metody
Jméno | Popis |
---|---|
CDockablePane::CheckAutoHideCondition |
Určuje, jestli je ukotvené podokno skryté (v režimu automatického skrytí). |
CDockablePane::CheckStopSlideCondition |
Určuje, kdy se má ukotvené podokno automatického skrytí zastavit. |
CDockablePane::DrawCaption |
Nakreslí titulek ukotveného podokna (úchyt). |
CDockablePane::OnPressButtons |
Volá se, když uživatel stiskne jiné tlačítko titulku než tlačítka AFX_HTCLOSE a AFX_HTMAXBUTTON . |
CDockablePane::OnSlide |
Zavolá se rozhraním pro vykreslení efektu automatického skrytí snímku, když je podokno zobrazeno nebo skryté. |
Datové členy
Jméno | Popis |
---|---|
CDockablePane::m_bDisableAnimation |
Určuje, jestli je zakázána automatická skrytí animace ukotveného podokna. |
CDockablePane::m_bHideInAutoHideMode |
Určuje chování podokna, pokud je podokno v režimu automatického skrytí. |
CDockablePane::m_nSlideSteps |
Určuje rychlost animace podokna při zobrazení nebo skrytí v režimu automatického skrytí. |
Poznámky
CDockablePane
implementuje následující funkce:
Ukotvení podokna do okna hlavního rámce
Přepnutí podokna do režimu automatického skrytí
Připojení podokna k oknům s kartami
Plovoucí podokno v miniframe okně
Ukotvení podokna k jinému podoknu, které je plovoucí v miniframe okně.
Změna velikosti podokna
Načítání a ukládání stavu ukotvení podokna
Poznámka
Informace o stavu se ukládají do registru Systému Windows.
Vytvoření podokna s titulkem nebo bez titulku Titulek může mít textový popisek a může být vyplněný barvou přechodu.
Přetažení podokna při zobrazení obsahu podokna
Přetažení podokna při zobrazení obdélníku přetažení
Pokud chcete v aplikaci použít ukotvené podokno, odvozujte třídu podokna z třídy CDockablePane
. Vložte odvozený objekt do objektu okna hlavního rámce nebo do objektu okna, který řídí instanci podokna. Potom při zpracování zprávy WM_CREATE
v okně hlavního rámce zavolejte metodu CDockablePane::Create
nebo metodu CDockablePane::CreateEx
. Nakonec nastavte objekt podokna voláním CBasePane::EnableDocking
, CBasePane::DockPane
nebo CDockablePane::AttachToTabWnd
.
Tipy pro přizpůsobení
Následující tipy platí pro CDockablePane
objekty:
Pokud zavoláte
CDockablePane::AttachToTabWnd
pro dvě nesouškovatelná podokna, v parametruppTabbedControlBar
se vrátí ukazatel na okno s kartami. Pomocí tohoto parametru můžete do okna s kartami dál přidávat karty.Druh podokna s kartami vytvořený
CDockablePane::AttachToTabWnd
je určen objektemCDockablePane
v parametrupTabControlBarAttachTo
. Můžete zavolatCDockablePane::SetTabbedPaneRTC
a nastavit typ podokna s kartami, kteréCDockablePane
vytvoří. Výchozí typ je určendwTabbedStyle
CDockablePane::Create
při prvním vytvořeníCDockablePane
. Pokud jedwTabbedStyle
AFX_CBRS_OUTLOOK_TABS
výchozí typ jeCMFCOutlookBar
třída; pokud jedwTabbedStyle
AFX_CBRS_REGULAR_TABS
výchozí typ jeCTabbedPane
třída.Pokud chcete ukotvit jedno dokovatelné podokno do jiného, zavolejte metodu
CDockablePane::DockToWindow
. Původní podokno musí být ukotveno někde před voláním této metody.Proměnná člena
CDockablePane::m_bHideInAutoHideMode
řídí chování dokovatelných podoken v režimu automatického skrytí při voláníCDockablePane::ShowPane
. Pokud je tato členová proměnná nastavená naTRUE
, ukotvená podokna a jejich tlačítka automatického skrytí budou skrytá. Jinak se posunou a vysunou.Automatickou skrytí animace můžete zakázat nastavením členské proměnné
CDockablePane::m_bDisableAnimation
naTRUE
.
Příklad
Následující příklad ukazuje, jak nakonfigurovat CDockablePane
objekt pomocí různých metod v CDockablePane
třídy. Příklad ukazuje, jak povolit automatickou skrytí všech funkcí pro ukotvené podokno, povolit titulek nebo úchyt, povolit režim automatického skrytí, zobrazit podokno a animovat podokno, které je v režimu automatického skrytí. Tento fragment kódu je součástí ukázky ukázky sady Visual Studio Demo.
// 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);
Hierarchie dědičnosti
Požadavky
Hlavička :afxDockablePane.h
CDockablePane::AttachToTabWnd
Připojí aktuální podokno k cílovému podoknu a vytvoří podokno s kartami.
virtual CDockablePane* AttachToTabWnd(
CDockablePane* pTabControlBarAttachTo,
AFX_DOCK_METHOD dockMethod,
BOOL bSetActive= TRUE,
CDockablePane** ppTabbedControlBar = NULL);
Parametry
pTabControlBarAttachTo
[in, out] Určuje cílové podokno, ke kterému se aktuální podokno připojí. Cílové podokno musí být ukotvené podokno.
dockMethod
[v] Určuje dokovací metodu.
bSetActive
[in] TRUE
aktivovat podokno s kartami po operaci připojení; jinak FALSE
.
ppTabbedControlBar
[ven] Obsahuje podokno s kartami, které je výsledkem operace připojení.
Návratová hodnota
Ukazatel na aktuální podokno, pokud se nejedná o podokno s kartami; jinak ukazatel na podokno s kartami, které je výsledkem operace připojení. Vrácená hodnota je NULL
, pokud aktuální podokno nejde připojit nebo pokud dojde k chybě.
Poznámky
Pokud se jedno ukotvené podokno připojí k jinému podoknu pomocí této metody, dojde k následujícímu:
Architektura kontroluje, jestli je cílové podokno
pTabControlBarAttachTo
normální ukotvení nebo jestli je odvozeno zCBaseTabbedPane
.Pokud je cílové podokno podokno s kartami, architektura do něj přidá aktuální podokno jako kartu.
Pokud je cílové podokno normální dokovací podokno, architektura vytvoří podokno s kartami.
Architektura volá
pTabControlBarAttachTo->CreateTabbedPane
. Styl nového podokna s kartami závisí na členum_pTabbedControlBarRTC
. Ve výchozím nastavení je tento člen nastaven na třídu runtimeCTabbedPane
. Pokud předáte stylAFX_CBRS_OUTLOOK_TABS
jako parametrdwTabbedStyle
metoděCDockablePane::Create
, objekt třídy runtime je nastaven na třídu runtimeCMFCOutlookBar
. Tento člen můžete kdykoli změnit, abyste změnili styl nového podokna.Když tato metoda vytvoří podokno s kartami, architektura nahradí ukazatel na
pTabControlBarAttachTo
(pokud je podokno ukotvené nebo plovoucí v okně s více miniframey) ukazatelem na nové podokno s kartami.Architektura přidá podokno
pTabControlBarAttachTo
do podokna s kartami jako první kartu. Architektura pak přidá aktuální podokno jako druhou kartu.
Pokud je aktuální podokno odvozeno z
CBaseTabbedPane
, všechny jeho karty se přesunou dopTabControlBarAttachTo
a aktuální podokno se zničí. Proto při volání této metody buďte opatrní, protože ukazatel na aktuální podokno může být při vrácení metody neplatný.
Pokud při vytváření ukotvení rozložení připojíte jedno podokno k druhému, nastavte dockMethod
na DM_SHOW
.
Před připojením jiného podokna k němu byste měli ukotvit první podokno.
CDockablePane::CalcFixedLayout
Vrátí velikost obdélníku podokna.
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
Parametry
bStretch
[v] Nepoužívá se.
bHorz
[v] Nepoužívá se.
Návratová hodnota
Objekt CSize
, který obsahuje velikost obdélníku podokna.
CDockablePane::CanAcceptMiniFrame
Určuje, zda lze zadaný minirámeček ukotvit do podokna.
virtual BOOL CanAcceptMiniFrame(CPaneFrameWnd* pMiniFrame) const;
Parametry
pMiniFrame
[v] Ukazatel na objekt CPaneFrameWnd
.
Návratová hodnota
TRUE
, pokud pMiniFrame
lze ukotvit do podokna; jinak FALSE
.
CDockablePane::CanAcceptPane
Určuje, zda lze do aktuálního podokna ukotvit další podokno.
virtual BOOL CanAcceptPane(const CBasePane* pBar) const;
Parametry
pBar
[v] Určuje podokno, které se má ukotvit k aktuálnímu podoknu.
Návratová hodnota
TRUE
, pokud se zadané podokno dá ukotvit do tohoto podokna; jinak FALSE
.
Poznámky
Architektura volá tuto metodu před ukotveným podoknem do aktuálního podokna.
Přepište tuto funkci v odvozené třídě, aby bylo možné povolit nebo zakázat ukotvení do určitého podokna.
Ve výchozím nastavení vrátí tato metoda TRUE
, pokud je pBar
nebo nadřazený typ CDockablePane
.
CDockablePane::CanAutoHide
Určuje, zda se podokno může automaticky skrýt.
virtual BOOL CanAutoHide() const;
Návratová hodnota
TRUE
, pokud se podokno může automaticky skrýt; jinak FALSE
.
Poznámky
CDockablePane::CanAutoHide
vrátí FALSE
v některé z následujících situací:
Podokno nemá nadřazený prvek.
Správce ukotvení neumožňuje automatické skrytí podoken.
Podokno není ukotvené.
CDockablePane::CanBeAttached
Určuje, zda je možné aktuální podokno ukotvit do jiného podokna.
virtual BOOL CanBeAttached() const;
Návratová hodnota
TRUE
, pokud lze ukotvené podokno ukotvit do jiného podokna nebo do okna hlavního rámečku; jinak FALSE
.
Poznámky
Ve výchozím nastavení tato metoda vždy vrací TRUE
. Přepsat tuto metodu v odvozené třídě povolit nebo zakázat ukotvení bez volání CBasePane::EnableDocking
.
CDockablePane::CDockablePane
Vytvoří a inicializuje objekt CDockablePane
.
CDockablePane();
Poznámky
Jakmile vytvoříte ukotvený objekt podokna, zavolejte CDockablePane::Create
nebo CDockablePane::CreateEx
a vytvořte ho.
CDockablePane::ConvertToTabbedDocument
Převede jedno nebo více dokovatelných podoken na dokumenty s kartami MDI.
virtual void ConvertToTabbedDocument(BOOL bActiveTabOnly = TRUE);
Parametry
bActiveTabOnly
[v] Při převodu CTabbedPane
zadejte TRUE
pro převod pouze aktivní karty. Zadejte FALSE
pro převod všech karet v podokně.
CDockablePane::CheckAutoHideCondition
Určuje, jestli je ukotvené podokno skryté (označuje se také jako režim automatického skrytí).
virtual BOOL CheckAutoHideCondition();
Návratová hodnota
TRUE
, pokud je splněna podmínka skrytí; jinak FALSE
.
Poznámky
Architektura používá časovač k pravidelné kontrole, zda se má skrýt automaticky skryté ukotvené podokno. Metoda vrátí TRUE
, pokud podokno není aktivní, podokno se nezmění a ukazatel myši není nad podoknem.
Pokud jsou splněny všechny předchozí podmínky, volání architektury CDockablePane::Slide
skrýt podokno.
CDockablePane::CheckStopSlideCondition
Určuje, kdy se má ukotvené podokno automatického ukotvení zastavit.
virtual BOOL CheckStopSlideCondition(BOOL bDirection);
Parametry
bDirection
[in] TRUE
, pokud je podokno viditelné; FALSE
, pokud je podokno skryté.
Návratová hodnota
TRUE
, pokud je splněna podmínka zastavení; jinak FALSE
.
Poznámky
Pokud je ukotvené podokno nastavené na režim automatického skrytí, architektura používá posuvné efekty k zobrazení nebo skrytí podokna. Architektura volá tuto funkci, když je podokno posuvné.
CheckStopSlideCondition
vrátí TRUE
, pokud je podokno plně viditelné nebo když je plně skryté.
Přepište tuto metodu v odvozené třídě pro implementaci vlastních automaticky skrytých efektů.
CDockablePane::CopyState
Zkopíruje stav ukotveného podokna.
virtual void CopyState(CDockablePane* pOrgBar);
Parametry
pOrgBar
[v] Ukazatel na ukotvené podokno.
Poznámky
CDockablePane::CopyState
zkopíruje stav pOrgBar
do aktuálního podokna voláním následujících metod:
CDockablePane::Create
Vytvoří ovládací prvek Windows a připojí ho k objektu CDockablePane
.
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);
Parametry
lpszCaption
[v] Určuje název okna.
pParentWnd
[in, out] Určuje nadřazené okno.
rect
[v] Určuje velikost a umístění okna v souřadnicích klienta pParentWnd
.
bHasGripper
[in] TRUE
vytvořit podokno s titulkem; jinak FALSE
.
nID
[v] Určuje ID podřízeného okna. Tato hodnota musí být jedinečná, pokud chcete uložit stav ukotvení pro toto ukotvení podokna.
dwStyle
[v] Určuje atributy stylu okna.
dwTabbedStyle
[v] Určuje styl s kartami okna s kartami, které se vytvoří, když uživatel přetáhne podokno na titulek tohoto podokna.
dwControlBarStyle
[v] Určuje další atributy stylu.
pContext
[in, out] Určuje kontext vytvoření okna.
lpszWindowName
[v] Určuje název okna.
sizeDefault
[v] Určuje velikost okna.
Návratová hodnota
TRUE
, pokud je ukotvené podokno úspěšně vytvořeno; jinak FALSE
.
Poznámky
Vytvoří podokno Windows a připojí ho k objektu CDockablePane
.
Pokud má styl okna dwStyle
příznak CBRS_FLOAT_MULTI
, může okno miniframe s ostatními podokny v okně miniframe plovávat. Ve výchozím nastavení můžou ukotvená podokna plout pouze jednotlivě.
Pokud má parametr dwTabbedStyle
zadaný příznak AFX_CBRS_OUTLOOK_TABS
, podokno vytvoří podokna s kartami ve stylu Outlooku, pokud je k tomuto podoknu připojeno jiné podokno pomocí metody CDockablePane::AttachToTabWnd
. Ve výchozím nastavení dokovatelné podokna vytvářejí běžná podokna s kartami typu CTabbedPane
.
CDockablePane::CreateDefaultPaneDivider
Vytvoří výchozí oddělovač pro podokno, protože je ukotvený do okna rámečku.
static CPaneDivider* __stdcall CreateDefaultPaneDivider(
DWORD dwAlignment,
CWnd* pParent,
CRuntimeClass* pSliderRTC = NULL);
Parametry
dwAlignment
[v] Určuje stranu hlavního rámce, do kterého se podokno ukotví. Pokud dwAlignment
obsahuje příznak CBRS_ALIGN_LEFT
nebo CBRS_ALIGN_RIGHT
, tato metoda vytvoří svislý (CPaneDivider::SS_VERT
) rozdělovač; jinak tato metoda vytvoří vodorovný (CPaneDivider::SS_HORZ
) rozdělovač.
pParent
[v] Ukazatel na nadřazený rámec
pSliderRTC
[v] Nepoužívá se.
Návratová hodnota
Tato metoda vrátí ukazatel na nově vytvořený rozdělovač nebo NULL
, pokud se vytvoření rozdělovače nezdaří.
Poznámky
dwAlignment
může být libovolná z následujících hodnot:
Hodnota | Popis |
---|---|
CBRS_ALIGN_TOP |
Podokno se ukotví v horní části klientské oblasti okna rámečku. |
CBRS_ALIGN_BOTTOM |
Podokno se ukotví do dolní části klientské oblasti okna rámečku. |
CBRS_ALIGN_LEFT |
Podokno se ukotví na levé straně klientské oblasti okna rámečku. |
CBRS_ALIGN_RIGHT |
Podokno se ukotví na pravé straně klientské oblasti okna rámečku. |
CDockablePane::CreateEx
Vytvoří ovládací prvek Windows a připojí ho k objektu CDockablePane
.
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);
Parametry
dwStyleEx
[v] Určuje atributy rozšířeného stylu pro nové okno.
lpszCaption
[v] Určuje název okna.
pParentWnd
[in, out] Určuje nadřazené okno.
rect
[v] Určuje velikost a umístění okna v souřadnicích klienta pParentWnd
.
bHasGripper
[in] TRUE
vytvořit podokno s titulkem; jinak FALSE
.
nID
[v] Určuje ID podřízeného okna. Tato hodnota musí být jedinečná, pokud chcete uložit stav ukotvení pro toto ukotvení podokna.
dwStyle
[v] Určuje atributy stylu okna.
dwTabbedStyle
[v] Určuje styl s kartami okna s kartami, které se vytvoří, když uživatel přetáhne podokno na titulek tohoto podokna.
dwControlBarStyle
[v] Určuje další atributy stylu.
pContext
[in, out] Určuje kontext vytvoření okna.
Návratová hodnota
TRUE
, pokud je ukotvené podokno úspěšně vytvořeno; jinak FALSE
.
Poznámky
Vytvoří podokno Windows a připojí ho k objektu CDockablePane
.
Pokud má styl okna dwStyle
příznak CBRS_FLOAT_MULTI
, může okno miniframe s ostatními podokny v okně miniframe plovávat. Ve výchozím nastavení můžou ukotvená podokna plout pouze jednotlivě.
Pokud má parametr dwTabbedStyle
zadaný příznak AFX_CBRS_OUTLOOK_TABS
, podokno vytvoří podokna s kartami ve stylu Outlooku, pokud je k tomuto podoknu připojeno jiné podokno pomocí metody CDockablePane::AttachToTabWnd
. Ve výchozím nastavení dokovatelné podokna vytvářejí běžná podokna s kartami typu CTabbedPane
.
CDockablePane::CreateTabbedPane
Vytvoří podokno s kartami z aktuálního podokna.
virtual CTabbedPane* CreateTabbedPane();
Návratová hodnota
Nové podokno s kartami nebo NULL
, pokud operace vytvoření selhala.
Poznámky
Architektura volá tuto metodu, když vytvoří podokno s kartami, které nahradí toto podokno. Další informace najdete v tématu CDockablePane::AttachToTabWnd
.
Přepsat tuto metodu v odvozené třídě přizpůsobit způsob vytváření a inicializace tabulátorových podoken.
Podokno s kartami se vytvoří podle informací třídy modulu runtime uložených v m_pTabbedControlBarRTC
členu, který je inicializován metodou CDockablePane::CreateEx
.
CDockablePane::DockPaneContainer
Ukotví kontejner do podokna.
virtual BOOL DockPaneContainer(
CPaneContainerManager& barContainerManager,
DWORD dwAlignment,
AFX_DOCK_METHOD dockMethod);
Parametry
barContainerManager
[v] Odkaz na správce kontejneru kontejneru, který je ukotven.
dwAlignment
[in] DWORD
, která určuje stranu podokna, do kterého se kontejner ukotví.
dockMethod
[v] Nepoužívá se.
Návratová hodnota
TRUE
, pokud byl kontejner úspěšně ukotvený do podokna; jinak FALSE
.
Poznámky
dwAlignment
může být libovolná z následujících hodnot:
Hodnota | Popis |
---|---|
CBRS_ALIGN_TOP |
Kontejner se ukotví v horní části podokna. |
CBRS_ALIGN_BOTTOM |
Kontejner je ukotvený do dolní části podokna. |
CBRS_ALIGN_LEFT |
Kontejner je ukotvený vlevo od podokna. |
CBRS_ALIGN_RIGHT |
Kontejner se ukotví napravo od podokna. |
CDockablePane::DockPaneStandard
Ukotví podokno pomocí ukotvení obrysu (standardní).
virtual CPane* DockPaneStandard(BOOL& bWasDocked);
Parametry
bWasDocked
[v] Když metoda vrátí, tato hodnota obsahuje TRUE
pokud podokno bylo úspěšně ukotveno; jinak obsahuje FALSE
.
Návratová hodnota
Pokud bylo podokno ukotveno do okna s kartami nebo pokud bylo vytvořeno okno s kartami v důsledku ukotvení, tato metoda vrátí ukazatel na okno s kartami. Pokud bylo podokno v opačném případě úspěšně ukotveno, tato metoda vrátí this
ukazatel. Pokud ukotvení selhalo, vrátí tato metoda NULL
.
CDockablePane::DockToRecentPos
Ukotví podokno k uložené pozici ukotvení.
BOOL CDockablePane::DockToRecentPos();
Návratová hodnota
TRUE
, pokud je podokno úspěšně ukotveno; jinak FALSE
.
Poznámky
Dokovatelné podokna ukládají nedávné informace o ukotvení v objektu CRecentDockSiteInfo
.
CDockablePane::DockToWindow
Ukotví jedno dokovací podokno do jiného ukotvení.
virtual BOOL DockToWindow(
CDockablePane* pTargetWindow,
DWORD dwAlignment,
LPCRECT lpRect = NULL);
Parametry
pTargetWindow
[in, out] Určuje dokovatelné podokno pro ukotvení tohoto podokna.
dwAlignment
[v] Určuje ukotvení zarovnání podokna. Může to být jeden z CBRS_ALIGN_LEFT
, CBRS_ALIGN_TOP
, CBRS_ALIGN_RIGHT
, CBRS_ALIGN_BOTTOM
nebo CBRS_ALIGN_ANY
. (Definováno v afxres.h
.)
lpRect
[v] Určuje dokovací obdélník pro podokno.
Návratová hodnota
TRUE
, pokud bylo podokno úspěšně ukotveno; jinak FALSE
.
Poznámky
Voláním této metody ukotvíte jedno podokno do jiného podokna se zarovnáním určeným dwAlignment
.
CDockablePane::DrawCaption
Nakreslí titulek (označovaný také jako úchyt) ukotveného podokna.
virtual void DrawCaption(
CDC* pDC,
CRect rectCaption);
Parametry
pDC
[v] Představuje kontext zařízení používaný pro kreslení.
rectCaption
[v] Určuje ohraničující obdélník titulku podokna.
Poznámky
Architektura volá tuto metodu pro vykreslení titulku ukotveného podokna.
Přepsat tuto metodu v odvozené třídě přizpůsobit vzhled titulku.
CDockablePane::EnableAutohideAll
Povolí nebo zakáže režim automatického skrytí pro toto podokno a pro další podokna v kontejneru.
void EnableAutohideAll(BOOL bEnable = TRUE);
Parametry
bEnable
[in] TRUE
povolení automatického skrytí všech funkcí pro ukotvené podokno; jinak FALSE
.
Poznámky
Když uživatel podrží klávesu Ctrl a kliknutím na tlačítko připnout přepne podokno do režimu automatického skrytí, přepnou se také všechna ostatní podokna ve stejném kontejneru do režimu automatického skrytí.
Volání této metody s bEnable
nastavenou na FALSE
zakázat tuto funkci pro konkrétní podokno.
CDockablePane::EnableGripper
Zobrazí nebo skryje titulek (označuje se také jako úchyt).
virtual void EnableGripper(BOOL bEnable);
Parametry
bEnable
[in] TRUE
povolit titulek; jinak FALSE
.
Poznámky
Když architektura vytvoří ukotvené podokna, nemají WS_STYLE
styl okna, i když je zadán. To znamená, že titulek podokna je neklinutová oblast řízená architekturou, ale tato oblast se liší od standardního titulku okna.
Titulek můžete kdykoli zobrazit nebo skrýt. Architektura skryje titulek, když je podokno přidáno jako karta do okna s kartami nebo když je podokno plovoucí v miniframe okně.
CDockablePane::GetAHRestoredRect
Určuje umístění podokna v režimu automatického skrytí.
CRect GetAHRestoredRect() const;
Návratová hodnota
Objekt CRect
, který obsahuje pozici podokna, když je v režimu automatického skrytí.
Poznámky
CDockablePane::GetAHSlideMode
Načte režim automatického skrytí snímku pro podokno.
virtual UINT GetAHSlideMode() const;
Návratová hodnota
UINT
, která určuje režim automatického skrytí snímku pro podokno. Návratová hodnota může být AFX_AHSM_MOVE
nebo AFX_AHSM_STRETCH
, ale implementace používá pouze AFX_AHSM_MOVE
.
Poznámky
CDockablePane::GetCaptionHeight
Vrátí výšku aktuálního titulku v pixelech.
virtual int GetCaptionHeight() const;
Návratová hodnota
Výška titulku v pixelech.
Poznámky
Výška titulku je 0, pokud byl titulek skrytý metodou CDockablePane::EnableGripper
nebo pokud podokno nemá titulek.
CDockablePane::GetDefaultPaneDivider
Vrátí výchozí oddělovač podokna pro kontejner podokna.
CPaneDivider* GetDefaultPaneDivider() const;
Návratová hodnota
Platný CPaneDivider
objekt, pokud je ukotvené dokovatelné podokno do okna hlavního rámečku, nebo NULL
, pokud ukotvené podokno není ukotvené nebo plovoucí.
Poznámky
Další informace o rozdělovači podokna naleznete v tématu CPaneDivider
Třídy.
CDockablePane::GetDockingStatus
Určuje možnost ukotvení podokna na základě zadaného umístění ukazatele.
virtual AFX_CS_STATUS GetDockingStatus(
CPoint pt,
int nSensitivity);
Parametry
pt
[v] Umístění ukazatele na souřadnicích obrazovky.
nSensitivity
[v] Vzdálenost v pixelech od okraje obdélníku musí být, aby bylo možné ukotvit ukazatel.
Návratová hodnota
Jedna z následujících hodnot stavu:
hodnota AFX_CS_STATUS |
Význam |
---|---|
CS_NOTHING |
Ukazatel není přes web docku. Architektura neukotví podokno. |
CS_DOCK_IMMEDIATELY |
Ukazatel se nachází na webu docku v okamžitém režimu (podokno používá režim ukotvení DT_IMMEDIATE ). Architektura dokuje podokno okamžitě. |
CS_DELAY_DOCK |
Ukazatel je nad webem docku, který je dalším ukotvením podokna nebo je hranou hlavního rámce. Architektura ukotvení podokna po zpoždění. Další informace o tomto zpoždění najdete v části Poznámky. |
CS_DELAY_DOCK_TO_TAB |
Ukazatel se nachází nad webem docku, který způsobí ukotvení podokna v okně s kartami. K tomu dochází, když se ukazatel nachází nad titulkem jiného ukotveného podokna nebo přes oblast karty v podokně s kartami. |
Poznámky
Architektura volá tuto metodu pro zpracování ukotvení plovoucího podokna.
U plovoucích panelů nástrojů nebo dokovacích podoken, které používají režim ukotvení DT_IMMEDIATE
, architektura zpožďuje příkaz docku, aby uživatel mohl před dokováním přesunout okno z klientské oblasti nadřazeného rámce. Délka zpoždění se měří v milisekundách a řídí se CDockingManager::m_nTimeOutBeforeToolBarDock
datovým členem. Výchozí hodnota CDockingManager::m_nTimeOutBeforeToolBarDock
je 200. Toto chování emuluje dokovací chování aplikace Microsoft Word 2007.
U zpožděných dokovacích stavů (CS_DELAY_DOCK
a CS_DELAY_DOCK_TO_TAB
) se architektura neprovádí dokování, dokud uživatel nespustí tlačítko myši. Pokud podokno používá DT_STANDARD
dokovací režim, architektura zobrazí obdélník v promítaném umístění ukotvení. Pokud podokno používá DT_SMART
dokovací režim, architektura zobrazí inteligentní dokovací značky a poloprůhledné obdélníky v promítaném umístění ukotvení. Chcete-li určit dokovací režim pro vaše podokno, zavolejte metodu CBasePane::SetDockingMode
. Další informace o inteligentním dokování najdete v tématu CDockingManager::GetSmartDockingParams
.
CDockablePane::GetDragSensitivity
Vrátí citlivost přetažení ukotveného podokna.
static const CSize& GetDragSensitivity();
Návratová hodnota
CSize
objekt, který obsahuje šířku a výšku obdélníku uprostřed na bod přetažení. Operace přetažení nezačíná, dokud se ukazatel myši nepřesune mimo tento obdélník.
CDockablePane::GetLastPercentInPaneContainer
Načte procento místa, které podokno zabírá v kontejneru (CPaneContainer
třída).
int GetLastPercentInPaneContainer() const;
Návratová hodnota
int
, která určuje procento místa, které podokno zabírá ve svém kontejneru.
Poznámky
Tato metoda se používá při úpravě rozložení kontejneru.
CDockablePane::GetTabArea
Načte oblast karty pro podokno.
virtual void GetTabArea(
CRect& rectTabAreaTop,
CRect& rectTabAreaBottom) const;
Parametry
rectTabAreaTop
[in] GetTabArea
tuto proměnnou vyplní oblastí karet, pokud jsou karty umístěné v horní části podokna. Pokud jsou karty umístěny v dolní části podokna, tato proměnná je vyplněna prázdným obdélníkem.
rectTabAreaBottom
[in] GetTabArea
tuto proměnnou vyplní oblastí karet, pokud jsou karty umístěné v dolní části podokna. Pokud jsou karty umístěny v horní části podokna, tato proměnná je vyplněna prázdným obdélníkem.
Poznámky
Tato metoda se používá pouze ve třídách odvozených z CDockablePane
a mají tabulátory. Další informace najdete v tématu CTabbedPane::GetTabArea
a CMFCOutlookBar::GetTabArea
.
CDockablePane::GetTabbedPaneRTC
Vrátí informace o třídě modulu runtime o okně s kartami vytvořeném při ukotvení jiného podokna k aktuálnímu podoknu.
CRuntimeClass* GetTabbedPaneRTC() const;
Návratová hodnota
Informace o třídě modulu runtime pro dokovatelné podokno.
Poznámky
Voláním této metody načtěte informace o třídě modulu runtime pro dynamicky vytvořená podokna s kartami. K tomu může dojít, když uživatel přetáhne jedno podokno na titulek jiného podokna nebo pokud zavoláte metodu CDockablePane::AttachToTabWnd
, která programově vytvoří podokno s kartami ze dvou dokovatelných podoken.
Informace o třídě modulu runtime můžete nastavit voláním metody CDockablePane::SetTabbedPaneRTC
.
CDockablePane::HasAutoHideMode
Určuje, jestli lze dokovací podokno přepnout do režimu automatického skrytí.
virtual BOOL HasAutoHideMode() const;
Návratová hodnota
TRUE
, pokud lze ukotvené podokno přepnout do režimu automatického skrytí; jinak FALSE
.
Poznámky
Přepište tuto metodu v odvozené třídě, chcete-li zakázat režim automatického skrytí pro konkrétní dokovatelné podokno.
CDockablePane::HitTest
Určuje umístění v podokně, kde uživatel klikne myší.
virtual int HitTest(
CPoint point,
BOOL bDetectCaption = FALSE);
Parametry
point
[v] Určuje bod, který se má testovat.
bDetectCaption
[in] TRUE
, pokud by se měla vrátit HTCAPTION
, pokud je bod na titulku podokna; jinak FALSE
.
Návratová hodnota
Jedna z následujících hodnot:
HTNOWHERE
, pokudpoint
není v dokovatelném podokně.HTCLIENT
, pokud jepoint
v klientské oblasti dokovatelného podokna.HTCAPTION
, pokud jepoint
v oblasti titulků ukotveného podokna.AFX_HTCLOSE
, pokud jepoint
na tlačítku zavřít.HTMAXBUTTON
, pokud jepoint
na tlačítku připnutí.
CDockablePane::IsAutohideAllEnabled
Určuje, jestli je možné podokno ukotvení a všechna ostatní podokna v kontejneru přepnout do režimu automatického skrytí.
virtual BOOL IsAutohideAllEnabled() const;
Návratová hodnota
TRUE
, pokud dokovatelné podokno a všechna ostatní podokna v kontejneru lze přepnout do režimu automatického skrytí; jinak FALSE
.
Poznámky
Uživatel povolí režim automatického skrytí kliknutím na tlačítko ukotvení připínáčku a podržením klávesy Ctrl
Chcete-li toto chování povolit nebo zakázat, zavolejte metodu CDockablePane::EnableAutohideAll
.
CDockablePane::IsAutoHideMode
Určuje, zda je podokno v režimu automatického skrytí.
virtual BOOL IsAutoHideMode() const;
Návratová hodnota
TRUE
, pokud je ukotvené podokno v režimu automatického skrytí; jinak FALSE
.
CDockablePane::IsDocked
Určuje, jestli je aktuální podokno ukotvené.
virtual BOOL IsDocked() const;
Návratová hodnota
TRUE
, pokud dokovatelné podokno nepatří do okna miniframe nebo pokud je plovoucí v okně miniframe s jiným podoknem.
FALSE
, pokud je podokno podřízeným oknem miniframe a neexistují žádná další podokna, která patří do okna miniframe.
Poznámky
Chcete-li zjistit, zda je podokno ukotveno do okna hlavního rámce, zavolejte CDockablePane::GetDefaultPaneDivider
. Pokud metoda vrátí ukazatel mimoNULL
, podokno se ukotví v okně hlavního rámce.
CDockablePane::IsHideInAutoHideMode
Určuje chování podokna, které je v režimu automatického skrytí, pokud je zobrazeno (nebo skryté) voláním CDockablePane::ShowPane
.
virtual BOOL IsHideInAutoHideMode() const;
Návratová hodnota
TRUE
, pokud by mělo být ukotvené podokno skryté, pokud je v režimu automatického skrytí; jinak FALSE
.
Poznámky
Pokud je ukotvené podokno v režimu automatického skrytí, chová se při volání ShowPane
, aby se podokno skrývalo nebo zobrazilo jinak. Toto chování je řízeno statickým členem CDockablePane::m_bHideInAutoHideMode
. Pokud je tento člen TRUE
, ukotvené podokno a související tlačítko automatického skrytí panelu nástrojů nebo automatického skrytí je skryté nebo zobrazené při volání ShowPane
. V opačném případě je ukotvené podokno aktivováno nebo deaktivováno a příslušné tlačítko automatického skrytí je vždy viditelné.
Přepište tuto metodu v odvozené třídě tak, aby se změnilo výchozí chování jednotlivých podoken.
Výchozí hodnota pro m_bHideInAutoHideMode
je FALSE
.
CDockablePane::IsInFloatingMultiPaneFrameWnd
Určuje, jestli je podokno v okně s rámečkem s více podokny (CMultiPaneFrameWnd Class
).
virtual BOOL IsInFloatingMultiPaneFrameWnd() const;
Návratová hodnota
TRUE
, pokud je podokno v okně s rámečkem s více podokny; jinak FALSE
.
Poznámky
CDockablePane::IsResizable
Určuje, jestli je podokno možné měnit velikost.
virtual BOOL IsResizable() const;
Návratová hodnota
TRUE
, pokud je podokno možné měnit velikost; jinak FALSE
.
Poznámky
Ve výchozím nastavení jsou dokovatelné příčky možné měnit velikost. Chcete-li zabránit změně velikosti, přepište tuto metodu v odvozené třídě a vrátit FALSE
. Všimněte si, že hodnota FALSE
vede k neúspěšné ASSERT
v CPane::DockPane
. Místo toho použijte CDockingManager::AddPane
k ukotvení podokna v nadřazeného rámečku.
Podokeny, u které nelze změnit velikost, nemůžou přecházet do režimu automatického skrytí ani do režimu automatického skrytí a vždy se nacházejí na vnějším okraji nadřazeného rámce.
CDockablePane::IsTabLocationBottom
Určuje, jestli se karty nacházejí v horní nebo dolní části podokna.
virtual BOOL IsTabLocationBottom() const;
Návratová hodnota
TRUE
, pokud jsou karty umístěné v dolní části podokna; FALSE
, pokud jsou karty umístěné v horní části podokna.
Poznámky
Další informace najdete v tématu CTabbedPane::IsTabLocationBottom
.
CDockablePane::IsTracked
Určuje, jestli uživatel přesouvá podokno.
BOOL IsTracked() const;
Návratová hodnota
TRUE
, pokud se podokno přesouvá; jinak FALSE
.
CDockablePane::IsVisible
Určuje, zda je aktuální podokno viditelné.
virtual BOOL IsVisible() const;
Návratová hodnota
TRUE
, pokud je viditelné ukotvené podokno; jinak FALSE
.
Poznámky
Voláním této metody určíte, zda je viditelné ukotvené podokno. Tuto metodu můžete použít místo volání CWnd::IsWindowVisible
nebo testování stylu WS_VISIBLE
. Vrácený stav viditelnosti závisí na tom, jestli je povolený nebo zakázaný režim automatického skrytí a na hodnotě vlastnosti CDockablePane::IsHideInAutoHideMode
.
Pokud je ukotvené podokno v režimu automatického skrytí a IsHideInAutoHideMode
vrátí FALSE
stav viditelnosti je vždy FALSE
.
Pokud je ukotvené podokno v režimu automatického skrytí a IsHideInAutoHideMode
vrátí TRUE
stav viditelnosti závisí na stavu viditelnosti souvisejícího panelu nástrojů automatického skrytí.
Pokud ukotvené podokno není v režimu automatického skrytí, stav viditelnosti je určen metodou CBasePane::IsVisible
.
##
CDockablePane::LoadState
Pouze pro interní použití. Další podrobnosti najdete ve zdrojovém kódu umístěném ve složce mfc
instalace sady Visual Studio. Například %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
Určuje, jestli je zakázaná automatická animace ukotveného podokna.
AFX_IMPORT_DATA static BOOL m_bDisableAnimation;
CDockablePane::m_bHideInAutoHideMode
Určuje chování podokna, pokud je podokno v režimu automatického skrytí.
AFX_IMPORT_DATA static BOOL m_bHideInAutoHideMode;
Poznámky
Tato hodnota má vliv na všechna ukotvená podokna v aplikaci.
Pokud nastavíte tento člen na TRUE
, ukotvené podokna jsou skrytá nebo zobrazena s jejich souvisejícími automaticky skrytými panely nástrojů a tlačítky při volání CDockablePane::ShowPane
.
Pokud tento člen nastavíte na FALSE
, ukotvené podokna se aktivují nebo deaktivují při volání CDockablePane::ShowPane
.
CDockablePane::m_nSlideSteps
Určuje rychlost animace podokna, když je v režimu automatického skrytí.
AFX_IMPORT_DATA static int m_nSlideSteps;
Poznámky
U rychlejšího animačního efektu tuto hodnotu snižte. U pomalejšího animačního efektu tuto hodnotu zvyšte.
CDockablePane::OnAfterChangeParent
Další podrobnosti najdete ve zdrojovém kódu umístěném ve složce mfc
instalace sady Visual Studio. Například %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc
.
virtual void OnAfterChangeParent(CWnd* pWndOldParent);
Parametry
[in] pWndOldParent
\
Poznámky
CDockablePane::OnAfterDockFromMiniFrame
Volá se podle architektury, když plovoucí ukotvený pruh dokuje v okně rámečku.
virtual void OnAfterDockFromMiniFrame();
Poznámky
Ve výchozím nastavení tato metoda nedělá nic.
CDockablePane::OnBeforeChangeParent
Architektura volá tuto metodu před změnou nadřazeného prvku podokna.
virtual void OnBeforeChangeParent(
CWnd* pWndNewParent,
BOOL bDelay = FALSE);
Parametry
pWndNewParent
[v] Ukazatel na nové nadřazené okno.
bDelay
[v] BoOL, která určuje, jestli se má odložit přepočet rozložení ukotvení, pokud je podokno odpojeno. Další informace najdete v tématu CDockablePane::UndockPane
.
Poznámky
Pokud je podokno ukotvené a nový nadřazený objekt neumožňuje ukotvení, tato metoda podokno odpočine.
Pokud je podokno převedeno na dokument s kartami, tato metoda uloží jeho poslední ukotvení pozice. Architektura používá poslední ukotvení pozice k obnovení pozice podokna při převodu zpět do ukotveného stavu.
CDockablePane::OnBeforeFloat
Architektura volá tuto metodu před přechodem podokna do plovoucího stavu.
virtual BOOL OnBeforeFloat(
CRect& rectFloat,
AFX_DOCK_METHOD dockMethod);
Parametry
rectFloat
[v] Určuje umístění a velikost podokna, když je v plovoucím stavu.
dockMethod
[v] Určuje dokovací metodu. Seznam možných hodnot najdete v CPane::DockPane
.
Návratová hodnota
TRUE
, pokud může být podokno plovoucí; jinak FALSE
.
Poznámky
Tato metoda je volána architekturou, když se podokno chystá plovoucí. Tuto metodu můžete přepsat v odvozené třídě, pokud chcete provést jakékoli zpracování před plovoucím podoknem.
CDockablePane::OnPressButtons
Volá se, když uživatel stiskne jiné tlačítko titulku než tlačítka AFX_HTCLOSE
a AFX_HTMAXBUTTON
.
virtual void OnPressButtons(UINT nHit);
Parametry
nHit
[v] Tento parametr se nepoužívá.
Poznámky
Pokud přidáte vlastní tlačítko do titulku dokovatelného podokna, přepište tuto metodu, aby dostávala oznámení, když uživatel stiskne tlačítko.
CDockablePane::OnSlide
Volá se rozhraním pro animaci podokna, když je v režimu automatického skrytí.
virtual void OnSlide(BOOL bSlideOut);
Parametry
bSlideOut
[in] TRUE
zobrazit podokno; FALSE
podokno skryjete.
Poznámky
Přepište tuto metodu v odvozené třídě pro implementaci vlastních automaticky skrytých efektů.
CDockablePane::RemoveFromDefaultPaneDividier
Architektura volá tuto metodu, když je podokno uvolněno.
void RemoveFromDefaultPaneDividier();
Poznámky
Tato metoda nastaví výchozí oddělovač podokna na NULL
a odebere podokno z kontejneru.
CDockablePane::ReplacePane
Nahradí podokno zadaným podoknem.
BOOL ReplacePane(
CDockablePane* pBarToReplaceWith,
AFX_DOCK_METHOD dockMethod,
BOOL bRegisterWithFrame = FALSE);
Parametry
pBarToReplaceWith
[v] Ukazatel na ukotvené podokno.
dockMethod
[v] Nepoužívá se.
bRegisterWithFrame
[v] Pokud TRUE
, nové podokno je registrováno u dokujícího správce nadřazeného starého podokna. Nové podokno se vloží do indexu starého podokna v seznamu podoken udržovaných správcem ukotvení.
Návratová hodnota
TRUE
, pokud je nahrazení úspěšné; jinak FALSE
.
CDockablePane::RestoreDefaultPaneDivider
Pokud je podokno deserializováno, rozhraní volá tuto metodu k obnovení výchozího rozdělovače podokna.
void RestoreDefaultPaneDivider();
Poznámky
Obnovený výchozí oddělovač podokna nahradí aktuální výchozí oddělovač podokna, pokud existuje.
CDockablePane::SetAutoHideMode
Přepíná dokovací podokno mezi viditelným a automaticky skrytým režimem.
virtual CMFCAutoHideBar* SetAutoHideMode(
BOOL bMode,
DWORD dwAlignment,
CMFCAutoHideBar* pCurrAutoHideBar = NULL,
BOOL bUseTimer = TRUE);
Parametry
bMode
[in] TRUE
povolit režim automatického skrytí; FALSE
povolit běžný režim ukotvení.
dwAlignment
[v] Určuje zarovnání automaticky skrytého podokna, které se má vytvořit.
pCurrAutoHideBar
[in, out] Ukazatel na aktuální panel nástrojů automatického skrytí Může být NULL
.
bUseTimer
[v] Určuje, jestli se má použít automaticky skrytý efekt, když uživatel přepne podokno do režimu automatického skrytí nebo aby se podokno okamžitě skryje.
Návratová hodnota
Automaticky zobrazit panel nástrojů vytvořený v důsledku přepnutí do režimu automatického skrytí nebo NULL
.
Poznámky
Architektura volá tuto metodu, když uživatel klikne na tlačítko připnutí a přepne dokovatelné podokno do režimu automatického skrytí nebo do normálního režimu ukotvení.
Voláním této metody můžete programově přepnout dokovatelné podokno do režimu automatického skrytí. Podokno musí být ukotveno do okna hlavního rámce (CDockablePane::GetDefaultPaneDivider
musí vrátit platný ukazatel na CPaneDivider
).
CDockablePane::SetAutoHideParents
Nastaví tlačítko automatického skrytí a automaticky skryje panel nástrojů pro podokno.
void SetAutoHideParents(
CMFCAutoHideBar* pToolBar,
CMFCAutoHideButton* pBtn);
Parametry
pToolBar
[v] Ukazatel na panel nástrojů automatického skrytí
pBtn
[v] Ukazatel na tlačítko automatického skrytí
CDockablePane::SetLastPercentInPaneContainer
Nastaví procento místa, které podokno zabírá v kontejneru.
void SetLastPercentInPaneContainer(int n);
Parametry
n
[v] int
, která určuje procento místa, které podokno zabírá ve svém kontejneru.
Poznámky
Architektura upraví podokno tak, aby při přepočtu rozložení používalo novou hodnotu.
CDockablePane::SetRestoredDefaultPaneDivider
Nastaví obnovený výchozí oddělovač podokna.
void SetRestoredDefaultPaneDivider(HWND hRestoredSlider);
Parametry
hRestoredSlider
[v] Úchyt pro rozdělovač podokna (posuvník).
Poznámky
Obnovený výchozí oddělovač podokna se získá, když je podokno deserializováno. Další informace najdete v tématu CDockablePane::RestoreDefaultPaneDivider
.
CDockablePane::SetTabbedPaneRTC
Nastaví informace o třídě modulu runtime pro okno s kartami, které se vytvoří, když se obě podokna ukotví dohromady.
void SetTabbedPaneRTC(CRuntimeClass* pRTC);
Parametry
pRTC
[v] Informace o třídě modulu runtime pro podokno s kartami.
Poznámky
Voláním této metody nastavíte informace o třídě modulu runtime pro podokna s kartami, která se vytvářejí dynamicky. K tomu může dojít, když uživatel přetáhne jedno podokno na titulek jiného podokna nebo pokud zavoláte metodu CDockablePane::AttachToTabWnd
, která programově vytvoří podokno s kartami ze dvou dokovatelných podoken.
Výchozí třída modulu runtime je nastavena podle parametru dwTabbedStyle
CDockablePane::Create
a CDockablePane::CreateEx
. Chcete-li přizpůsobit nová podokna s kartami, odvodit třídu z jedné z následujících tříd:
třídy
třídy
Pak tuto metodu zavolejte ukazatelem na informace o třídě modulu runtime.
CDockablePane::ShowPane
Zobrazí nebo skryje podokno.
virtual void ShowPane(
BOOL bShow,
BOOL bDelay,
BOOL bActivate);
Parametry
bShow
[in] TRUE
zobrazit podokno; FALSE
podokno skryjete.
bDelay
[in] TRUE
zpožděním úprav rozložení ukotvení; FALSE
okamžitě upravit rozložení ukotvení.
bActivate
[in] TRUE
aktivovat podokno, když je zobrazeno; jinak FALSE
.
Poznámky
Tuto metodu volejte místo CWnd::ShowWindow
při zobrazení nebo skrytí ukotvených podoken.
CDockablePane::Slide
Animuje podokno, které je v režimu automatického skrytí.
virtual void Slide(
BOOL bSlideOut,
BOOL bUseTimer = TRUE);
Parametry
bSlideOut
[in] TRUE
zobrazit podokno; FALSE
podokno skryjete.
bUseTimer
[in] TRUE
zobrazení nebo skrytí podokna s automaticky skrytým efektem; FALSE
, aby se podokno okamžitě zobrazilo nebo skryje.
Poznámky
Architektura volá tuto metodu k animaci podokna, které je v režimu automatického skrytí.
Tato metoda používá hodnotu CDockablePane::m_nSlideDefaultTimeOut
k určení časového limitu efektu snímku. Výchozí hodnota časového limitu je 1. Pokud upravíte algoritmus automatického skrytí, změňte tento člen tak, aby časový limit změnil.
CDockablePane::ToggleAutoHide
Přepíná podokno mezi vždy viditelným a automatickým skrytým režimem.
virtual void ToggleAutoHide();
Poznámky
Tato metoda přepíná režim automatického skrytí podokna voláním CDockablePane::SetAutoHideMode
.
CDockablePane::UndockPane
Vrátí podokno z okna hlavního rámce nebo kontejneru okna miniframe.
virtual void UndockPane(BOOL bDelay = FALSE);
Parametry
bDelay
[in] TRUE
zpoždění výpočtu rozložení ukotvení; FALSE
, aby se rozložení ukotvení okamžitě přepočítalo.
Poznámky
Voláním této metody můžete uvolnit podokno z okna hlavního rámce nebo z kontejneru okna s více miniframey (podokno plovoucí v jednom miniframe okně s jinými podokny).
Před provedením jakékoli externí operace, která není provedena CDockingManager
, musíte podokno zrušit. Pokud například chcete podokno přesunout programově z jednoho umístění do jiného, musíte podokno zrušit.
Architektura automaticky odpojí podokna před jejich zničením.
Viz také
třídy
třídy