CDockablePane
Třída
Implementuje podokno, které se dá ukotvit na webu docku nebo zahrnout do podokna s kartami.
Syntaxe
class CDockablePane : public CPane
Členové
Veřejné konstruktory
Název | Popis |
---|---|
CDockablePane::CDockablePane |
Vytvoří a inicializuje CDockablePane objekt. |
Veřejné metody
Název | 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ě. Pokud chcete ukotvit podokno, 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
Název | 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ž AFX_HTCLOSE tlačítka a AFX_HTMAXBUTTON tlačítka. |
CDockablePane::OnSlide |
Zavolá se rozhraním pro vykreslení efektu automatického skrytí snímku, když je podokno zobrazeno nebo skryté. |
Datové členy
Název | 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í
Chcete-li v aplikaci použít ukotvené podokno, odvozujte třídu podokna CDockablePane
z třídy. Vložte odvozený objekt do objektu okna hlavního rámce nebo do objektu okna, který řídí instanci podokna. Pak zavolejte metodu CDockablePane::Create
nebo metodu CDockablePane::CreateEx
při zpracování WM_CREATE
zprávy v okně hlavního rámce. 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 voláte
CDockablePane::AttachToTabWnd
dvě neuskuteční podokna, ukotvitelná podokna se v parametruppTabbedControlBar
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, které je vytvořeno
CDockablePane::AttachToTabWnd
pomocí objektuCDockablePane
v parametrupTabControlBarAttachTo
. Můžete volatCDockablePane::SetTabbedPaneRTC
, abyste nastavili typ podokna s kartami, kteréCDockablePane
vytvoří. Výchozí typ je určendwTabbedStyle
CDockablePane::Create
při prvním vytvořeníCDockablePane
. PokuddwTabbedStyle
jeAFX_CBRS_OUTLOOK_TABS
výchozím typem třídaCMFCOutlookBar
; pokuddwTabbedStyle
jeAFX_CBRS_REGULAR_TABS
výchozím typemCTabbedPane
třída.Pokud chcete ukotvit jedno dokovatelné podokno k jinému, 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í ukotvených podoken v režimu automatického skrytí při voláníCDockablePane::ShowPane
. Pokud je tato proměnná člena nastavena naTRUE
, ukotvené podokna a jejich tlačítka automatického skrytí budou skryta. Jinak se posunou a vysunou.Automatickou skrytí animace můžete zakázat nastavením
CDockablePane::m_bDisableAnimation
členské proměnné naTRUE
hodnotu .
Příklad
Následující příklad ukazuje, jak nakonfigurovat CDockablePane
objekt pomocí různých metod ve CDockablePane
třídě. 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 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
Záhlaví: 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
[v] TRUE
aktivace podokna s kartami po operaci připojení; v opačném případě . 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 nelze 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 zkontroluje, jestli je cílové podokno
pTabControlBarAttachTo
normální dokovací podokno, 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říduCTabbedPane
modulu runtime . Pokud předáteAFX_CBRS_OUTLOOK_TABS
styl jakodwTabbedStyle
parametr metoděCDockablePane::Create
, objekt třídy runtime je nastaven na třídu runtime třídyCMFCOutlookBar
. Tento člen můžete kdykoli změnit, abyste změnili styl nového podokna.Když tato metoda vytvoří podokno s kartami, architektura nahradí ukazatel
pTabControlBarAttachTo
(pokud je podokno ukotveno nebo plovoucí v okně s více miniframey) ukazatelem na nové podokno s kartami.Architektura přidá
pTabControlBarAttachTo
podokno 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 jsou přesunuty dopTabControlBarAttachTo
a aktuální podokno je zničeno. 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ého rozložení připojíte jedno podokno k druhému, nastavíte na DM_SHOW
hodnotu dockMethod
.
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 CPaneFrameWnd
objekt.
Návratová hodnota
TRUE
je-li pMiniFrame
možné ukotvit do podokna; FALSE
v opačném případě .
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
je-li zadané podokno možné ukotvit do tohoto podokna; v opačném případě . 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í tato metoda vrátí TRUE
, zda je nebo pBar
jeho 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; v opačném případě . 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; v opačném případě . FALSE
Poznámky
Ve výchozím nastavení tato metoda vždy vrátí TRUE
. Přepsat tuto metodu v odvozené třídě povolit nebo zakázat ukotvení bez volání CBasePane::EnableDocking
.
CDockablePane::CDockablePane
Vytvoří a inicializuje CDockablePane
objekt.
CDockablePane();
Poznámky
Po vytvoření dokovatelného objektu podokna volat CDockablePane::Create
nebo CDockablePane::CreateEx
vytvořit.
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
TRUE
zadáte, aby se převedla pouze aktivní karta. ZadejteFALSE
, chcete-li převést všechny karty 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
je-li splněna podmínka skrytí; v opačném případě . FALSE
Poznámky
Architektura používá časovač k pravidelné kontrole, zda se má skrýt automaticky skryté ukotvené podokno. Metoda se vrátí TRUE
, když podokno není aktivní, podokno se nezmění a ukazatel myši není v podokně.
Pokud jsou splněny všechny předchozí podmínky, volání CDockablePane::Slide
architektury pro skrytí podokna.
CDockablePane::CheckStopSlideCondition
Určuje, kdy se má ukotvené podokno automatického ukotvení zastavit.
virtual BOOL CheckStopSlideCondition(BOOL bDirection);
Parametry
bDirection
[v] TRUE
pokud je podokno viditelné; FALSE
pokud je podokno skryté.
Návratová hodnota
TRUE
je-li splněna podmínka zastavení; v opačném případě . 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
, když 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 do aktuálního pOrgBar
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 pParentWnd
klienta .
bHasGripper
[v] TRUE
vytvoření podokna s titulkem; v opačném případě . 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; v opačném případě . FALSE
Poznámky
Vytvoří podokno Windows a připojí ho k objektu CDockablePane
.
dwStyle
Pokud má styl CBRS_FLOAT_MULTI
okna příznak, může se okno miniframe v okně miniframe s plovoucími podokny s ostatními podokny. Ve výchozím nastavení můžou ukotvená podokna plout pouze jednotlivě.
Pokud má dwTabbedStyle
parametr AFX_CBRS_OUTLOOK_TABS
zadaný příznak, podokno vytvoří podokna s kartami ve stylu Outlooku, pokud je k tomuto podoknu připojeno jiné podokno pomocí CDockablePane::AttachToTabWnd
metody. 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 CBRS_ALIGN_LEFT
nebo CBRS_ALIGN_RIGHT
příznak, 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 pParentWnd
klienta .
bHasGripper
[v] TRUE
vytvoření podokna s titulkem; v opačném případě . 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; v opačném případě . FALSE
Poznámky
Vytvoří podokno Windows a připojí ho k objektu CDockablePane
.
dwStyle
Pokud má styl CBRS_FLOAT_MULTI
okna příznak, může se okno miniframe v okně miniframe s plovoucími podokny s ostatními podokny. Ve výchozím nastavení můžou ukotvená podokna plout pouze jednotlivě.
Pokud má dwTabbedStyle
parametr AFX_CBRS_OUTLOOK_TABS
zadaný příznak, podokno vytvoří podokna s kartami ve stylu Outlooku, pokud je k tomuto podoknu připojeno jiné podokno pomocí CDockablePane::AttachToTabWnd
metody. 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 na webu 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 členu m_pTabbedControlBarRTC
, 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
[v] DWORD
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; v opačném případě . 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 jinak úspěšně ukotveno, tato metoda vrátí this
ukazatel. Pokud ukotvení selhalo, tato metoda vrátí NULL
.
CDockablePane::DockToRecentPos
Ukotví podokno k uložené pozici ukotvení.
BOOL CDockablePane::DockToRecentPos();
Návratová hodnota
TRUE
pokud je podokno úspěšně ukotveno; v opačném případě . FALSE
Poznámky
Dokovatelné podokna ukládají poslední 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 být jedním z CBRS_ALIGN_LEFT
, CBRS_ALIGN_TOP
, CBRS_ALIGN_RIGHT
nebo CBRS_ALIGN_BOTTOM
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; v opačném případě . FALSE
Poznámky
Voláním této metody ukotvíte jedno podokno do jiného podokna se zarovnáním určeným parametrem 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
[v] TRUE
povolení automatického skrytí všech funkcí pro dokovatelné podokno; v opačném případě . FALSE
Poznámky
Když uživatel podrží klávesu Ctrl a klikne na tlačítko připnutí a 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í.
Volejte tuto metodu, která bEnable
je nastavená tak, aby FALSE
tuto funkci zakázala pro konkrétní podokno.
CDockablePane::EnableGripper
Zobrazí nebo skryje titulek (označuje se také jako úchyt).
virtual void EnableGripper(BOOL bEnable);
Parametry
bEnable
[v] TRUE
povolení titulku; v opačném případě . FALSE
Poznámky
Když architektura vytvoří dokovatelné 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 umístění 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
A UINT
, který určuje režim automatického skrytí snímku pro podokno. Návratová hodnota může být buď AFX_AHSM_MOVE
nebo AFX_AHSM_STRETCH
, ale implementace používá AFX_AHSM_MOVE
pouze .
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é podokno ukotvené do okna hlavního rámečku nebo NULL
pokud ukotvené podokno není ukotvené nebo je plovoucí.
Poznámky
Další informace o rozdělovači podokna naleznete v tématu CPaneDivider
Třída.
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:
AFX_CS_STATUS hodnota |
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á DT_IMMEDIATE režim ukotvení). 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í DT_IMMEDIATE
dokovací režim, 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.
V případě 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 nevyvolá 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í. Pokud chcete určit režim ukotvení pro vaše podokno, zavolejte metodu CBasePane::SetDockingMode
. Další informace o inteligentní dokování naleznete v tématu CDockingManager::GetSmartDockingParams
.
CDockablePane::GetDragSensitivity
Vrátí citlivost přetažení ukotveného podokna.
static const CSize& GetDragSensitivity();
Návratová hodnota
Objekt CSize
, který obsahuje šířku a výšku v pixelech obdélníku na stř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
Určuje int
procento místa, které podokno zabírá v 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
[v] GetTabArea
vyplní tuto proměnnou oblastí tabulátoru, 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
[v] GetTabArea
vyplní tuto proměnnou oblastí tabulátoru, 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, které jsou odvozeny a CDockablePane
mají karty. Další informace najdete v tématech 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
pro programové vytvoření podokna s kartami ze dvou ukotvených podoken.
Informace o třídě modulu runtime můžete nastavit voláním CDockablePane::SetTabbedPaneRTC
metody.
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í; v opačném případě . 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
[v] TRUE
pokud HTCAPTION
je bod v titulku podokna, měl by být vrácen, jinak . FALSE
Návratová hodnota
Jedna z následujících hodnot:
HTNOWHERE
pokudpoint
není v dokovatelném podokně.HTCLIENT
pokudpoint
je v klientské oblasti dokovatelného podokna.HTCAPTION
pokudpoint
je v oblasti titulků v dokovatelném podokně.AFX_HTCLOSE
pokudpoint
je na tlačítku Zavřít.HTMAXBUTTON
pokudpoint
je 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šechny ostatní podokna v kontejneru lze přepnout do režimu automatického skrytí; v opačném případě . 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í; v opačném případě . 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í jiný ukazatelNULL
, podokno se ukotví v hlavním okně 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í; v opačném případě . FALSE
Poznámky
Pokud je ukotvené podokno v režimu automatického skrytí, chová se při volání ShowPane
ke skrytí nebo zobrazení podokna odlišně. Toto chování je řízeno statickým členem CDockablePane::m_bHideInAutoHideMode
. Pokud je TRUE
tento člen , dokovatelné podokno a související panel nástrojů automatického skrytí nebo tlačítko 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 je m_bHideInAutoHideMode
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; v opačném případě . 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; v opačném případě . 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 FALSE
hodnota vede k selhání ASSERT
v CPane::DockPane
. Místo toho slouží 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ěny v dolní části podokna; FALSE
pokud jsou karty umístěné v horní části podokna.
Poznámky
Další informace najdete na webu CTabbedPane::IsTabLocationBottom
.
CDockablePane::IsTracked
Určuje, jestli uživatel přesouvá podokno.
BOOL IsTracked() const;
Návratová hodnota
TRUE
pokud je podokno přesunuto; v opačném případě . FALSE
CDockablePane::IsVisible
Určuje, zda je aktuální podokno viditelné.
virtual BOOL IsVisible() const;
Návratová hodnota
TRUE
pokud je ukotvené podokno viditelné; v opačném případě . 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ě CDockablePane::IsHideInAutoHideMode
vlastnosti.
Pokud je ukotvené podokno v režimu automatického skrytí a IsHideInAutoHideMode
vrátí FALSE
stav viditelnosti 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 dokovatelné podokno není v režimu automatického skrytí, stav viditelnosti je určen metodou CBasePane::IsVisible
.
## CDockablePane::LoadState
Jen pro interní potřebu Další podrobnosti najdete ve zdrojovém kódu umístěném mfc
ve složce 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 skryta nebo zobrazena s jejich souvisejícími automaticky skrytými panely nástrojů a tlačítky při volání CDockablePane::ShowPane
.
Pokud nastavíte tento člen na FALSE
, dokovatelné příčky jsou aktivovány nebo deaktivovány 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 mfc
ve složce 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
[v] 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 na webu 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. Podívejte CPane::DockPane
se na seznam možných hodnot.
Návratová hodnota
TRUE
pokud může být podokno plovoucí; v opačném případě . 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ž AFX_HTCLOSE
tlačítka a AFX_HTMAXBUTTON
tlačítka.
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
[v] TRUE
zobrazení podokna; 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
podokno a odebere ho 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
se nové podokno zaregistruje 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
je-li nahrazení úspěšné; v opačném případě . 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
[v] TRUE
povolení režimu automatického skrytí; FALSE
pro povolení běžného dokovacího režimu.
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 to 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 hlavního okna 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] Určuje int
procento místa, které podokno zabírá v 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 na webu 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
pro programové vytvoření podokna s kartami ze dvou ukotvený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:
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
[v] TRUE
zobrazení podokna; FALSE
podokno skryjete.
bDelay
[v] TRUE
pozdržet úpravu rozložení ukotvení; FALSE
a upravte rozložení ukotvení okamžitě.
bActivate
[v] TRUE
aktivovat podokno, pokud je zobrazeno; v opačném případě . FALSE
Poznámky
Volejte tuto metodu CWnd::ShowWindow
místo 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
[v] TRUE
zobrazení podokna; FALSE
podokno skryjete.
bUseTimer
[v] TRUE
zobrazení nebo skrytí podokna s automaticky skrytým efektem; FALSE
zobrazení nebo skrytí podokna okamžitě.
Poznámky
Architektura volá tuto metodu k animaci podokna, které je v režimu automatického skrytí.
Tato metoda používá CDockablePane::m_nSlideDefaultTimeOut
hodnotu 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
[v] TRUE
zpoždění výpočtu rozložení ukotvení; FALSE
a přepočítá rozložení ukotvení okamžitě.
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 nástrojem CDockingManager
. 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é
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro