klasa CDockablePane
Implementuje okienko, które można zadokować w lokacji docka lub dołączone do okienka z kartami.
Składnia
class CDockablePane : public CPane
Członków
Konstruktory publiczne
Nazwa | Opis |
---|---|
CDockablePane::CDockablePane |
Tworzy i inicjuje obiekt CDockablePane . |
Metody publiczne
Nazwa | Opis |
---|---|
CDockablePane::AttachToTabWnd |
Dołącza okienko do innego okienka. Spowoduje to utworzenie okienka z kartami. |
CDockablePane::CalcFixedLayout |
Zwraca rozmiar prostokąta okienka. |
CDockablePane::CanAcceptMiniFrame |
Określa, czy określona mini ramka może być zadokowana do okienka. |
CDockablePane::CanAcceptPane |
Określa, czy można zadokować kolejne okienko do bieżącego okienka. |
CDockablePane::CanAutoHide |
Określa, czy okienko obsługuje tryb automatycznego ukrywania. (Przesłonięcia CBasePane::CanAutoHide .) |
CDockablePane::CanBeAttached |
Określa, czy bieżące okienko można zadokować do innego okienka. |
CDockablePane::ConvertToTabbedDocument |
Konwertuje co najmniej jedno okienko z możliwością dokowania do dokumentów z kartami MDI. |
CDockablePane::CopyState |
Kopiuje stan okienka z możliwością dokowania. |
CDockablePane::Create |
Tworzy kontrolkę systemu Windows i dołącza ją do obiektu CDockablePane . |
CDockablePane::CreateDefaultPaneDivider |
Tworzy domyślny podział okienka, ponieważ jest on zadokowany do okna ramki. |
CDockablePane::CreateEx |
Tworzy kontrolkę systemu Windows i dołącza ją do obiektu CDockablePane . |
CDockablePane::CreateTabbedPane |
Tworzy okienko z kartami z bieżącego okienka. |
CDockablePane::DockPaneContainer |
Zadokuje kontener do okienka. |
CDockablePane::DockPaneStandard |
Dokowuje okienko przy użyciu zadokowania konspektu (standardowego). |
CDockablePane::DockToFrameWindow |
Używane wewnętrznie. Aby zadokować okienko, użyj CPane::DockPane lub CDockablePane::DockToWindow . |
CDockablePane::DockToRecentPos |
Zadokuje okienko do przechowywanej ostatnio pozycji dokowania. |
CDockablePane::DockToWindow |
Zadokuje jedno okienko dokowania do innego okienka dokowania. |
CDockablePane::EnableAutohideAll |
Włącza lub wyłącza tryb automatycznego ukrywania dla tego okienka wraz z innymi okienkami w kontenerze. |
CDockablePane::EnableGripper |
Wyświetla lub ukrywa podpis (uchwyt). |
CDockablePane::GetAHRestoredRect |
Określa położenie okienka, gdy jest widoczne w trybie automatycznego ukrywania. |
CDockablePane::GetAHSlideMode |
Pobiera tryb automatycznego ukrywania slajdów dla okienka. |
CDockablePane::GetAutoHideButton |
Używane wewnętrznie. |
CDockablePane::GetAutoHideToolBar |
Używane wewnętrznie. |
CDockablePane::GetCaptionHeight |
Zwraca wysokość bieżącego podpisu. |
CDockablePane::GetDefaultPaneDivider |
Zwraca domyślny podział okienka dla kontenera okienka. |
CDockablePane::GetDockingStatus |
Określa możliwość zadokowania okienka na podstawie podanej lokalizacji wskaźnika. |
CDockablePane::GetDragSensitivity |
Zwraca czułość przeciągania okienka dokowania. |
CDockablePane::GetLastPercentInPaneContainer |
Pobiera procent miejsca zajmowanego przez okienko w kontenerze. |
CDockablePane::GetTabArea |
Pobiera obszar karty dla okienka. |
CDockablePane::GetTabbedPaneRTC |
Zwraca informacje o klasie środowiska uruchomieniowego dotyczące okna z kartami utworzonego podczas dokowania innego okienka do bieżącego okienka. |
CDockablePane::HasAutoHideMode |
Określa, czy okienko dokowania można przełączyć do trybu automatycznego ukrywania. |
CDockablePane::HitTest |
Określa określoną lokalizację w okienku, w którym użytkownik klika mysz. |
CDockablePane::IsAccessibilityCompatible |
Używane wewnętrznie. |
CDockablePane::IsAutohideAllEnabled |
Wskazuje, czy okienko dokowania i wszystkie inne okienka w kontenerze można umieścić w trybie automatycznego ukrywania. |
CDockablePane::IsAutoHideMode |
Określa, czy okienko jest w trybie automatycznego ukrywania. |
CDockablePane::IsChangeState |
Używane wewnętrznie. |
CDockablePane::IsDocked |
Określa, czy bieżące okienko jest zadokowane. |
CDockablePane::IsHideInAutoHideMode |
Określa zachowanie okienka, które jest w trybie automatycznego ukrywania, jeśli jest wyświetlane (lub ukryte), wywołując ShowPane . |
CDockablePane::IsInFloatingMultiPaneFrameWnd |
Określa, czy okienko znajduje się w oknie ramki z wieloma okienkami. |
CDockablePane::IsResizable |
Określa, czy okienko jest możliwe do zmiany rozmiaru. |
CDockablePane::IsTabLocationBottom |
Określa, czy karty znajdują się w górnej lub dolnej części okienka. |
CDockablePane::IsTracked |
Określa, czy okienko jest przeciągane przez użytkownika. |
CDockablePane::IsVisible |
Określa, czy bieżące okienko jest widoczne. |
CDockablePane::LoadState |
Używane wewnętrznie. |
CDockablePane::OnAfterChangeParent |
Wywoływana przez platformę, gdy element nadrzędny okienka uległ zmianie. (Przesłonięcia CPane::OnAfterChangeParent .) |
CDockablePane::OnAfterDockFromMiniFrame |
Wywoływana przez platformę, gdy pływający pasek dokowania dokuje w oknie ramowym. |
CDockablePane::OnBeforeChangeParent |
Wywoływana przez strukturę, gdy element nadrzędny okienka ma ulec zmianie. (Przesłonięcia CPane::OnBeforeChangeParent .) |
CDockablePane::OnBeforeFloat |
Wywoływana przez platformę, gdy okienko ma być zmiennoprzecinkowe. (Przesłonięcia CPane::OnBeforeFloat .) |
CDockablePane::RemoveFromDefaultPaneDividier |
Struktura wywołuje tę metodę, gdy okienko jest oddokowane. |
CDockablePane::ReplacePane |
Zamienia okienko na określone okienko. |
CDockablePane::RestoreDefaultPaneDivider |
Struktura wywołuje tę metodę jako okienko jest deserializowane w celu przywrócenia domyślnego podziału okienka. |
CDockablePane::SaveState |
Używane wewnętrznie. |
CDockablePane::Serialize |
Serializuje okienko. (Przesłonięcia CBasePane::Serialize .) |
CDockablePane::SetAutoHideMode |
Przełącza okienko dokowania między trybem widocznym i automatycznym ukrywaniem. |
CDockablePane::SetAutoHideParents |
Ustawia przycisk automatycznego ukrywania i automatycznie ukrywa pasek narzędzi okienka. |
CDockablePane::SetDefaultPaneDivider |
Używane wewnętrznie. |
CDockablePane::SetLastPercentInPaneContainer |
Ustawia procent miejsca zajmowanego przez okienko w kontenerze. |
CDockablePane::SetResizeMode |
Używane wewnętrznie. |
CDockablePane::SetRestoredDefaultPaneDivider |
Ustawia przywrócony domyślny podział okienka. |
CDockablePane::SetTabbedPaneRTC |
Ustawia informacje o klasie środowiska uruchomieniowego dla okna z kartami, które jest tworzone podczas łączenia dwóch okienek. |
CDockablePane::ShowPane |
Wyświetla lub ukrywa okienko. |
CDockablePane::Slide |
Wyświetla lub ukrywa okienko z przesuwaną animacją, która jest wyświetlana tylko wtedy, gdy okienko jest w trybie automatycznego ukrywania. |
CDockablePane::ToggleAutoHide |
Przełącza tryb automatycznego ukrywania. (Przesłonięcia CPane::ToggleAutoHide .) |
CDockablePane::UndockPane |
Oddokuje okienko z głównego okna ramowego lub kontenera okien miniframe. |
CDockablePane::UnSetAutoHideMode |
Używane wewnętrznie. Aby ustawić tryb automatycznego ukrywania, użyj CDockablePane::SetAutoHideMode |
Metody chronione
Nazwa | Opis |
---|---|
CDockablePane::CheckAutoHideCondition |
Określa, czy okienko dokowania jest ukryte (w trybie automatycznego ukrywania). |
CDockablePane::CheckStopSlideCondition |
Określa, kiedy okienko automatycznego ukrywania dokowania powinno przestać przesuwać się. |
CDockablePane::DrawCaption |
Rysuje podpis okienka dokowania (uchwyt). |
CDockablePane::OnPressButtons |
Wywoływana, gdy użytkownik naciska przycisk podpisu inny niż przycisk AFX_HTCLOSE i AFX_HTMAXBUTTON . |
CDockablePane::OnSlide |
Wywoływana przez strukturę w celu renderowania efektu automatycznego ukrywania slajdu, gdy okienko jest wyświetlane lub ukryte. |
Składowe danych
Nazwa | Opis |
---|---|
CDockablePane::m_bDisableAnimation |
Określa, czy animacja automatycznego ukrywania okienka z możliwością dokowania jest wyłączona. |
CDockablePane::m_bHideInAutoHideMode |
Określa zachowanie okienka, gdy okienko jest w trybie automatycznego ukrywania. |
CDockablePane::m_nSlideSteps |
Określa szybkość animacji okienka, gdy jest wyświetlana lub ukryta w trybie automatycznego ukrywania. |
Uwagi
CDockablePane
implementuje następujące funkcje:
Zadokowanie okienka do głównego okna ramowego.
Przełączanie okienka do trybu automatycznego ukrywania.
Dołączanie okienka do okna z kartami.
Przestawne okienko w oknie miniframe.
Zadokowanie okienka do innego okienka, które unosi się w oknie miniframe.
Zmiana rozmiaru okienka.
Ładowanie i zapisywanie stanu dla okienka dokowania.
Nuta
Informacje o stanie są zapisywane w rejestrze systemu Windows.
Tworzenie okienka z podpisem lub bez go. Podpis może mieć etykietę tekstową i może być wypełniony kolorem gradientu.
Przeciąganie okienka podczas wyświetlania zawartości okienka
Przeciąganie okienka podczas wyświetlania prostokąta przeciągania.
Aby użyć okienka dokowania w aplikacji, utwórz klasę okienka z klasy CDockablePane
. Osadź obiekt pochodny w obiekcie okna głównego ramki lub w obiekcie okna, który kontroluje wystąpienie okienka. Następnie wywołaj metodę CDockablePane::Create
lub metodę CDockablePane::CreateEx
podczas przetwarzania komunikatu WM_CREATE
w oknie głównym ramki. Na koniec skonfiguruj obiekt okienka, wywołując CBasePane::EnableDocking
, CBasePane::DockPane
lub CDockablePane::AttachToTabWnd
.
Porady dotyczące dostosowywania
Następujące porady dotyczą obiektów CDockablePane
:
W przypadku wywołania
CDockablePane::AttachToTabWnd
dla dwóch nienadzorowanych okienek z możliwością dokowania wskaźnik do okna z kartą zostanie zwrócony w parametrzeppTabbedControlBar
. Możesz nadal dodawać karty do okna z kartami przy użyciu tego parametru.Rodzaj okienka z kartami tworzonym przez
CDockablePane::AttachToTabWnd
jest określany przez obiektCDockablePane
w parametrzepTabControlBarAttachTo
. Możesz wywołaćCDockablePane::SetTabbedPaneRTC
, aby ustawić rodzaj okienka z kartami, które zostanie utworzone przezCDockablePane
. Typ domyślny jest określany przezdwTabbedStyle
CDockablePane::Create
podczas pierwszego tworzeniaCDockablePane
. JeślidwTabbedStyle
jestAFX_CBRS_OUTLOOK_TABS
domyślnym typem jestCMFCOutlookBar
Klasa; JeślidwTabbedStyle
jestAFX_CBRS_REGULAR_TABS
domyślnym typem jestCTabbedPane
Klasa.Jeśli chcesz zadokować jedno dokowalne okienko do drugiego, wywołaj metodę
CDockablePane::DockToWindow
. Oryginalne okienko musi być zadokowane gdzieś przed wywołaniem tej metody.Zmienna składowa
CDockablePane::m_bHideInAutoHideMode
określa, jak okienka z możliwością dokowania zachowują się w trybie automatycznego ukrywania podczas wywoływaniaCDockablePane::ShowPane
. Jeśli ta zmienna składowa jest ustawiona naTRUE
, zadokowalne okienka i ich przyciski automatycznego ukrywania będą ukryte. W przeciwnym razie wysuną się i wyjdą.Możesz wyłączyć animację automatycznego ukrywania, ustawiając zmienną składową
CDockablePane::m_bDisableAnimation
naTRUE
.
Przykład
W poniższym przykładzie pokazano, jak skonfigurować obiekt CDockablePane
przy użyciu różnych metod w klasie CDockablePane
. W przykładzie pokazano, jak włączyć funkcję automatycznego ukrywania wszystkich funkcji dla okienka z możliwością dokowania, włączać podpis lub uchwyt, włączać tryb automatycznego ukrywania, pokazywać okienko i animować okienko, które jest w trybie automatycznego ukrywania. Ten fragment kodu jest częścią przykładu 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);
Hierarchia dziedziczenia
Wymagania
nagłówek :afxDockablePane.h
CDockablePane::AttachToTabWnd
Dołącza bieżące okienko do okienka docelowego, tworząc okienko z kartami.
virtual CDockablePane* AttachToTabWnd(
CDockablePane* pTabControlBarAttachTo,
AFX_DOCK_METHOD dockMethod,
BOOL bSetActive= TRUE,
CDockablePane** ppTabbedControlBar = NULL);
Parametry
pTabControlBarAttachTo
[in, out] Określa okienko docelowe, do którego jest dołączane bieżące okienko. Okienko docelowe musi być okienkiem z możliwością dokowania.
dockMethod
[in] Określa metodę dokowania.
bSetActive
[in] TRUE
, aby aktywować okienko z kartami po operacji dołączania; w przeciwnym razie FALSE
.
ppTabbedControlBar
[out] Zawiera okienko z kartami, które wynika z operacji dołączania.
Wartość zwracana
Wskaźnik do bieżącego okienka, jeśli nie jest to okienko z kartami; w przeciwnym razie wskaźnik do okienka z kartami, które wynika z operacji dołączania. Wartość zwracana jest NULL
, jeśli nie można dołączyć bieżącego okienka lub jeśli wystąpi błąd.
Uwagi
Gdy jedno okienko z możliwością dokowania jest dołączane do innego okienka przy użyciu tej metody, występują następujące czynności:
Struktura sprawdza, czy okienko docelowe
pTabControlBarAttachTo
jest zwykłym okienkiem dokowania, czy pochodzi zCBaseTabbedPane
.Jeśli okienko docelowe jest okienkiem z kartami, platforma dodaje do niego bieżące okienko jako kartę.
Jeśli okienko docelowe jest zwykłym okienkiem dokowania, platforma tworzy okienko z kartami.
Struktura wywołuje
pTabControlBarAttachTo->CreateTabbedPane
. Styl nowego okienka z kartami zależy odm_pTabbedControlBarRTC
elementu członkowskiego. Domyślnie ten element członkowski jest ustawiony na klasę środowiska uruchomieniowegoCTabbedPane
. Jeśli przekażesz stylAFX_CBRS_OUTLOOK_TABS
jako parametrdwTabbedStyle
do metodyCDockablePane::Create
, obiekt klasy środowiska uruchomieniowego zostanie ustawiony na klasę środowiska uruchomieniowegoCMFCOutlookBar
. Możesz zmienić ten element członkowski w dowolnym momencie, aby zmienić styl nowego okienka.Gdy ta metoda tworzy okienko z kartami, platforma zastępuje wskaźnik
pTabControlBarAttachTo
(jeśli okienko jest zadokowane lub przestawne w oknie z wieloma miniframe) wskaźnikiem do nowego okienka kart.Platforma dodaje okienko
pTabControlBarAttachTo
do okienka z kartami jako pierwszą kartę. Następnie platforma dodaje bieżące okienko jako drugą kartę.
Jeśli bieżące okienko pochodzi z
CBaseTabbedPane
, wszystkie jej karty zostaną przeniesione dopTabControlBarAttachTo
, a bieżące okienko zostanie zniszczone. Dlatego należy zachować ostrożność podczas wywoływania tej metody, ponieważ wskaźnik do bieżącego okienka może być nieprawidłowy, gdy metoda zwróci.
Jeśli dołączysz jedno okienko do drugiego podczas tworzenia układu dokowania, ustaw dockMethod
na wartość DM_SHOW
.
Przed dołączeniem do niego innego okienka należy zadokować pierwsze okienko.
CDockablePane::CalcFixedLayout
Zwraca rozmiar prostokąta okienka.
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
Parametry
bStretch
[in] Nieużytne.
bHorz
[in] Nieużytne.
Wartość zwracana
Obiekt CSize
zawierający rozmiar prostokąta okienka.
CDockablePane::CanAcceptMiniFrame
Określa, czy określona mini-ramka może być zadokowana do okienka.
virtual BOOL CanAcceptMiniFrame(CPaneFrameWnd* pMiniFrame) const;
Parametry
pMiniFrame
[in] Wskaźnik do obiektu CPaneFrameWnd
.
Wartość zwracana
TRUE
, jeśli pMiniFrame
można zadokować do okienka; w przeciwnym razie FALSE
.
CDockablePane::CanAcceptPane
Określa, czy można zadokować kolejne okienko do bieżącego okienka.
virtual BOOL CanAcceptPane(const CBasePane* pBar) const;
Parametry
pBar
[in] Określa okienko, aby zadokować do bieżącego okienka.
Wartość zwracana
TRUE
, jeśli określone okienko można zadokować do tego okienka; w przeciwnym razie FALSE
.
Uwagi
Struktura wywołuje tę metodę, zanim okienko zostanie zadokowane do bieżącego okienka.
Zastąp tę funkcję w klasie pochodnej, aby włączyć lub wyłączyć dokowanie do określonego okienka.
Domyślnie ta metoda zwraca TRUE
, jeśli pBar
lub jej element nadrzędny ma typ CDockablePane
.
CDockablePane::CanAutoHide
Określa, czy okienko może automatycznie ukrywać.
virtual BOOL CanAutoHide() const;
Wartość zwracana
TRUE
, jeśli okienko może automatycznie ukryć; w przeciwnym razie FALSE
.
Uwagi
CDockablePane::CanAutoHide
zwraca FALSE
w dowolnej z następujących sytuacji:
Okienko nie ma elementu nadrzędnego.
Menedżer dokowania nie zezwala na automatyczne ukrywanie okienek.
Okienko nie jest zadokowane.
CDockablePane::CanBeAttached
Określa, czy bieżące okienko można zadokować do innego okienka.
virtual BOOL CanBeAttached() const;
Wartość zwracana
TRUE
, jeśli okienko dokowania można zadokować do innego okienka lub do głównego okna ramowego; w przeciwnym razie FALSE
.
Uwagi
Domyślnie ta metoda zawsze zwraca TRUE
. Zastąp tę metodę w klasie pochodnej, aby włączyć lub wyłączyć dokowanie bez wywoływania metody CBasePane::EnableDocking
.
CDockablePane::CDockablePane
Tworzy i inicjuje obiekt CDockablePane
.
CDockablePane();
Uwagi
Po utworzeniu obiektu okienka z możliwością dokowania wywołaj CDockablePane::Create
lub CDockablePane::CreateEx
, aby go utworzyć.
CDockablePane::ConvertToTabbedDocument
Konwertuje co najmniej jedno okienko z możliwością dokowania do dokumentów z kartami MDI.
virtual void ConvertToTabbedDocument(BOOL bActiveTabOnly = TRUE);
Parametry
bActiveTabOnly
[in] Podczas konwertowania CTabbedPane
określ TRUE
, aby przekonwertować tylko aktywną kartę. Określ FALSE
, aby przekonwertować wszystkie karty w okienku.
CDockablePane::CheckAutoHideCondition
Określa, czy okienko dokowania jest ukryte (nazywane również trybem automatycznego ukrywania).
virtual BOOL CheckAutoHideCondition();
Wartość zwracana
TRUE
, jeśli warunek ukrywania jest spełniony; w przeciwnym razie FALSE
.
Uwagi
Struktura używa czasomierza do okresowego sprawdzania, czy ukryć okienko dokowania automatycznie. Metoda zwraca TRUE
, gdy okienko nie jest aktywne, okienko nie jest zmieniane, a wskaźnik myszy nie znajduje się w okienku.
Jeśli zostaną spełnione wszystkie poprzednie warunki, struktura wywołuje CDockablePane::Slide
, aby ukryć okienko.
CDockablePane::CheckStopSlideCondition
Określa, kiedy okienko automatycznego zadokowania powinno przestać przesuwać się.
virtual BOOL CheckStopSlideCondition(BOOL bDirection);
Parametry
bDirection
[in] TRUE
, jeśli okienko jest widoczne; FALSE
, jeśli okienko jest ukryte.
Wartość zwracana
TRUE
, jeśli warunek zatrzymania jest spełniony; w przeciwnym razie FALSE
.
Uwagi
Gdy okienko z możliwością dokowania jest ustawione na tryb automatycznego ukrywania, platforma używa efektów przesuwanych do pokazywania lub ukrywania okienka. Platforma wywołuje tę funkcję, gdy okienko jest przesuwane.
CheckStopSlideCondition
zwraca TRUE
, gdy okienko jest w pełni widoczne lub gdy jest w pełni ukryte.
Zastąp tę metodę w klasie pochodnej, aby zaimplementować niestandardowe efekty autohide.
CDockablePane::CopyState
Kopiuje stan okienka z możliwością dokowania.
virtual void CopyState(CDockablePane* pOrgBar);
Parametry
pOrgBar
[in] Wskaźnik do okienka z możliwością dokowania.
Uwagi
CDockablePane::CopyState
kopiuje stan pOrgBar
do bieżącego okienka, wywołując następujące metody:
CDockablePane::Create
Tworzy kontrolkę systemu Windows i dołącza ją do obiektu 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
[in] Określa nazwę okna.
pParentWnd
[in, out] Określa okno nadrzędne.
rect
[in] Określa rozmiar i położenie okna we współrzędnych klienta pParentWnd
.
bHasGripper
[in] TRUE
, aby utworzyć okienko z podpisem; w przeciwnym razie FALSE
.
nID
[in] Określa identyfikator okna podrzędnego. Ta wartość musi być unikatowa, jeśli chcesz zapisać stan dokowania dla tego okienka dokowania.
dwStyle
[in] Określa atrybuty stylu okna.
dwTabbedStyle
[in] Określa styl z kartami okna z kartami, który jest tworzony, gdy użytkownik przeciąga okienko na podpis tego okienka.
dwControlBarStyle
[in] Określa dodatkowe atrybuty stylu.
pContext
[in, out] Określa kontekst tworzenia okna.
lpszWindowName
[in] Określa nazwę okna.
sizeDefault
[in] Określa rozmiar okna.
Wartość zwracana
TRUE
, jeśli okienko z możliwością dokowania zostało pomyślnie utworzone; w przeciwnym razie FALSE
.
Uwagi
Tworzy okienko systemu Windows i dołącza je do obiektu CDockablePane
.
Jeśli styl okna dwStyle
ma flagę CBRS_FLOAT_MULTI
, okno miniframe może unosić się z innymi okienkami w oknie miniframe. Domyślnie okienka dokowania mogą nosić tylko pojedynczo.
Jeśli parametr dwTabbedStyle
ma określoną flagę AFX_CBRS_OUTLOOK_TABS
, okienko tworzy okienka z kartami w stylu programu Outlook, gdy inne okienko jest dołączone do tego okienka przy użyciu metody CDockablePane::AttachToTabWnd
. Domyślnie okienka z możliwością dokowania tworzą zwykłe okienka z kartami typu CTabbedPane
.
CDockablePane::CreateDefaultPaneDivider
Tworzy domyślny podział okienka, ponieważ jest on zadokowany do okna ramki.
static CPaneDivider* __stdcall CreateDefaultPaneDivider(
DWORD dwAlignment,
CWnd* pParent,
CRuntimeClass* pSliderRTC = NULL);
Parametry
dwAlignment
[in] Określa stronę ramki głównej, do której jest zadokowane okienko. Jeśli dwAlignment
zawiera flagę CBRS_ALIGN_LEFT
lub CBRS_ALIGN_RIGHT
, ta metoda tworzy pionowy (CPaneDivider::SS_VERT
) rozdzielacz; w przeciwnym razie ta metoda tworzy dzielenie poziome (CPaneDivider::SS_HORZ
).
pParent
[in] Wskaźnik do ramki nadrzędnej.
pSliderRTC
[in] Nieużytne.
Wartość zwracana
Ta metoda zwraca wskaźnik do nowo utworzonego dzielenia lub NULL
, jeśli tworzenie dzielenia zakończy się niepowodzeniem.
Uwagi
dwAlignment
może być dowolną z następujących wartości:
Wartość | Opis |
---|---|
CBRS_ALIGN_TOP |
Okienko jest zadokowane do góry obszaru klienta okna ramowego. |
CBRS_ALIGN_BOTTOM |
Okienko jest zadokowane do dołu obszaru klienta okna ramowego. |
CBRS_ALIGN_LEFT |
Okienko jest zadokowane po lewej stronie obszaru klienta okna ramowego. |
CBRS_ALIGN_RIGHT |
Okienko jest zadokowane po prawej stronie obszaru klienta okna ramowego. |
CDockablePane::CreateEx
Tworzy kontrolkę systemu Windows i dołącza ją do obiektu 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
[in] Określa atrybuty stylu rozszerzonego dla nowego okna.
lpszCaption
[in] Określa nazwę okna.
pParentWnd
[in, out] Określa okno nadrzędne.
rect
[in] Określa rozmiar i położenie okna we współrzędnych klienta pParentWnd
.
bHasGripper
[in] TRUE
, aby utworzyć okienko z podpisem; w przeciwnym razie FALSE
.
nID
[in] Określa identyfikator okna podrzędnego. Ta wartość musi być unikatowa, jeśli chcesz zapisać stan dockowania dla tego okienka dokowania.
dwStyle
[in] Określa atrybuty stylu okna.
dwTabbedStyle
[in] Określa styl z kartami okna z kartami, który jest tworzony, gdy użytkownik przeciąga okienko na podpis tego okienka.
dwControlBarStyle
[in] Określa dodatkowe atrybuty stylu.
pContext
[in, out] Określa kontekst tworzenia okna.
Wartość zwracana
TRUE
, jeśli okienko z możliwością dokowania zostało pomyślnie utworzone; w przeciwnym razie FALSE
.
Uwagi
Tworzy okienko systemu Windows i dołącza je do obiektu CDockablePane
.
Jeśli styl okna dwStyle
ma flagę CBRS_FLOAT_MULTI
, okno miniframe może unosić się z innymi okienkami w oknie miniframe. Domyślnie okienka dokowania mogą nosić tylko pojedynczo.
Jeśli parametr dwTabbedStyle
ma określoną flagę AFX_CBRS_OUTLOOK_TABS
, okienko tworzy okienka z kartami w stylu programu Outlook, gdy inne okienko jest dołączone do tego okienka przy użyciu metody CDockablePane::AttachToTabWnd
. Domyślnie okienka z możliwością dokowania tworzą zwykłe okienka z kartami typu CTabbedPane
.
CDockablePane::CreateTabbedPane
Tworzy okienko z kartami z bieżącego okienka.
virtual CTabbedPane* CreateTabbedPane();
Wartość zwracana
Nowe okienko z kartami lub NULL
, jeśli operacja tworzenia nie powiodła się.
Uwagi
Struktura wywołuje tę metodę podczas tworzenia okienka z kartami w celu zastąpienia tego okienka. Aby uzyskać więcej informacji, zobacz CDockablePane::AttachToTabWnd
.
Zastąp tę metodę w klasie pochodnej, aby dostosować sposób tworzenia i inicjowania okienek z kartami.
Okienko z kartami jest tworzone zgodnie z informacjami o klasie środowiska uruchomieniowego przechowywanymi w składowej m_pTabbedControlBarRTC
, która jest inicjowana przez metodę CDockablePane::CreateEx
.
CDockablePane::DockPaneContainer
Zadokuje kontener do okienka.
virtual BOOL DockPaneContainer(
CPaneContainerManager& barContainerManager,
DWORD dwAlignment,
AFX_DOCK_METHOD dockMethod);
Parametry
barContainerManager
[in] Odwołanie do menedżera kontenera kontenera, który jest zadokowany.
dwAlignment
[in] DWORD
, który określa stronę okienka, do którego jest zadokowany kontener.
dockMethod
[in] Nieużytne.
Wartość zwracana
TRUE
, jeśli kontener został pomyślnie zadokowany do okienka; w przeciwnym razie FALSE
.
Uwagi
dwAlignment
może być dowolną z następujących wartości:
Wartość | Opis |
---|---|
CBRS_ALIGN_TOP |
Kontener jest zadokowany do góry okienka. |
CBRS_ALIGN_BOTTOM |
Kontener jest zadokowany do dołu okienka. |
CBRS_ALIGN_LEFT |
Kontener jest zadokowany po lewej stronie okienka. |
CBRS_ALIGN_RIGHT |
Kontener jest zadokowany po prawej stronie okienka. |
CDockablePane::DockPaneStandard
Dokowuje okienko przy użyciu zadokowania konspektu (standardowego).
virtual CPane* DockPaneStandard(BOOL& bWasDocked);
Parametry
bWasDocked
[in] Gdy metoda zwróci metodę, ta wartość zawiera TRUE
, jeśli okienko zostało pomyślnie zadokowane; w przeciwnym razie zawiera FALSE
.
Wartość zwracana
Jeśli okienko zostało zadokowane do okna z kartą lub jeśli okno z kartą zostało utworzone w wyniku zadokowania, ta metoda zwraca wskaźnik do okna z kartą. Jeśli okienko zostało pomyślnie zadokowane, ta metoda zwraca wskaźnik this
. Jeśli dockowanie nie powiodło się, ta metoda zwraca NULL
.
CDockablePane::DockToRecentPos
Zadokuje okienko do przechowywanej pozycji dokowania.
BOOL CDockablePane::DockToRecentPos();
Wartość zwracana
TRUE
, jeśli okienko zostało pomyślnie zadokowane; w przeciwnym razie FALSE
.
Uwagi
Okienka z możliwością zadokowania przechowują najnowsze informacje o zadokowaniu w obiekcie CRecentDockSiteInfo
.
CDockablePane::DockToWindow
Zadokuje jedno okienko dokowania do innego okienka dokowania.
virtual BOOL DockToWindow(
CDockablePane* pTargetWindow,
DWORD dwAlignment,
LPCRECT lpRect = NULL);
Parametry
pTargetWindow
[in, out] Określa dokowalne okienko, aby zadokować to okienko.
dwAlignment
[in] Określa wyrównanie dokowania dla okienka. Może być jednym z CBRS_ALIGN_LEFT
, CBRS_ALIGN_TOP
, CBRS_ALIGN_RIGHT
, CBRS_ALIGN_BOTTOM
lub CBRS_ALIGN_ANY
. (Zdefiniowane w afxres.h
.)
lpRect
[in] Określa prostokąt dokowania dla okienka.
Wartość zwracana
TRUE
, jeśli okienko zostało pomyślnie zadokowane; w przeciwnym razie FALSE
.
Uwagi
Wywołaj tę metodę, aby zadokować jedno okienko do innego okienka z wyrównaniem określonym przez dwAlignment
.
CDockablePane::DrawCaption
Rysuje podpis (nazywany również uchwytem) okienka dokowania.
virtual void DrawCaption(
CDC* pDC,
CRect rectCaption);
Parametry
pDC
[in] Reprezentuje kontekst urządzenia używany do rysowania.
rectCaption
[in] Określa prostokąt ograniczenia podpisu okienka.
Uwagi
Struktura wywołuje tę metodę, aby narysować podpis okienka z możliwością dokowania.
Zastąp tę metodę w klasie pochodnej, aby dostosować wygląd podpisu.
CDockablePane::EnableAutohideAll
Włącza lub wyłącza tryb automatycznego ukrywania dla tego okienka i innych okienek w kontenerze.
void EnableAutohideAll(BOOL bEnable = TRUE);
Parametry
bEnable
[in] TRUE
włączyć funkcję automatycznego ukrywania wszystkich funkcji dla okienka z możliwością dokowania; w przeciwnym razie FALSE
.
Uwagi
Gdy użytkownik przechowuje ctrl i klika przycisk pinezki, aby przełączyć okienko w tryb autohide, wszystkie inne okienka w tym samym kontenerze są również przełączane do trybu automatycznego ukrywania.
Wywołaj tę metodę przy użyciu bEnable
ustawionej na FALSE
, aby wyłączyć tę funkcję dla określonego okienka.
CDockablePane::EnableGripper
Wyświetla lub ukrywa podpis (nazywany również uchwytem).
virtual void EnableGripper(BOOL bEnable);
Parametry
bEnable
[in] TRUE
włączyć podpis; w przeciwnym razie FALSE
.
Uwagi
Gdy platforma tworzy okienka z możliwością dokowania, nie mają one stylu okna WS_STYLE
, nawet jeśli zostanie określony. Oznacza to, że podpis okienka jest obszarem spoza klienta kontrolowanym przez platformę, ale ten obszar różni się od standardowego podpisu okna.
W dowolnym momencie możesz pokazać lub ukryć podpis. Struktura ukrywa podpis po dodaniu okienka jako karty do okna z kartą lub gdy okienko jest unoszone w oknie miniframe.
CDockablePane::GetAHRestoredRect
Określa położenie okienka w trybie automatycznego ukrywania.
CRect GetAHRestoredRect() const;
Wartość zwracana
Obiekt CRect
, który zawiera położenie okienka, gdy jest w trybie automatycznego ukrywania.
Uwagi
CDockablePane::GetAHSlideMode
Pobiera tryb automatycznego ukrywania slajdów dla okienka.
virtual UINT GetAHSlideMode() const;
Wartość zwracana
UINT
określający tryb automatycznego ukrywania slajdu dla okienka. Wartość zwracana może być AFX_AHSM_MOVE
lub AFX_AHSM_STRETCH
, ale implementacja używa tylko AFX_AHSM_MOVE
.
Uwagi
CDockablePane::GetCaptionHeight
Zwraca wysokość w pikselach bieżącego podpisu.
virtual int GetCaptionHeight() const;
Wartość zwracana
Wysokość podpisu w pikselach.
Uwagi
Wysokość podpisu wynosi 0, jeśli podpis został ukryty przez metodę CDockablePane::EnableGripper
lub jeśli okienko nie ma podpisu.
CDockablePane::GetDefaultPaneDivider
Zwraca domyślny podział okienka dla kontenera okienka.
CPaneDivider* GetDefaultPaneDivider() const;
Wartość zwracana
Prawidłowy obiekt CPaneDivider
, jeśli okienko z możliwością zadokowania jest zadokowane do głównego okna ramowego lub NULL
, jeśli okienko dokowania nie jest zadokowane lub jeśli jest przestawne.
Uwagi
Aby uzyskać więcej informacji na temat dzielenia okienek, zobacz CPaneDivider
Class.
CDockablePane::GetDockingStatus
Określa możliwość zadokowania okienka na podstawie podanej lokalizacji wskaźnika.
virtual AFX_CS_STATUS GetDockingStatus(
CPoint pt,
int nSensitivity);
Parametry
pt
[in] Lokalizacja wskaźnika we współrzędnych ekranu.
nSensitivity
[in] Odległość w pikselach z dala od krawędzi prostokąta wskaźnika musi być włączona dokowania.
Wartość zwracana
Jedna z następujących wartości stanu:
AFX_CS_STATUS wartość |
Znaczenie |
---|---|
CS_NOTHING |
Wskaźnik nie znajduje się w miejscu dokowania. Platforma nie zadokuje okienka. |
CS_DOCK_IMMEDIATELY |
Wskaźnik znajduje się w miejscu dokowania w trybie bezpośrednim (okienko używa trybu dokowania DT_IMMEDIATE ). Platforma natychmiast zadokuje okienko. |
CS_DELAY_DOCK |
Wskaźnik znajduje się w miejscu dokowania, który jest innym okienkiem dokowania lub jest krawędzią ramki głównej. Struktura zadokuje okienko po opóźnieniu. Aby uzyskać więcej informacji na temat tego opóźnienia, zobacz sekcję Uwagi. |
CS_DELAY_DOCK_TO_TAB |
Wskaźnik znajduje się nad lokacją docka, która powoduje, że okienko jest zadokowane w oknie z kartami. Dzieje się tak, gdy wskaźnik znajduje się nad podpisem innego okienka dokowania lub obszarem karty okienka z kartą. |
Uwagi
Struktura wywołuje tę metodę do obsługi zadokowania przestawnego okienka.
W przypadku przestawnych pasków narzędzi lub okienek dokowania korzystających z trybu dokowania DT_IMMEDIATE
platforma opóźnia polecenie dock, aby umożliwić użytkownikowi przeniesienie okna z obszaru klienta ramki nadrzędnej przed dokowaniem. Długość opóźnienia jest mierzona w milisekundach i jest kontrolowana przez element członkowski danych CDockingManager::m_nTimeOutBeforeToolBarDock
. Wartość domyślna CDockingManager::m_nTimeOutBeforeToolBarDock
to 200. To zachowanie emuluje zachowanie dokowania programu Microsoft Word 2007.
W przypadku stanów opóźnionego dokowania (CS_DELAY_DOCK
i CS_DELAY_DOCK_TO_TAB
) struktura nie wykonuje zadokowania, dopóki użytkownik nie zwolni przycisku myszy. Jeśli okienko używa trybu dokowania DT_STANDARD
, platforma wyświetla prostokąt w przewidywanej lokalizacji dokowania. Jeśli okienko używa trybu dokowania DT_SMART
, platforma wyświetla inteligentne znaczniki dokowania i półprzezroczyste prostokąty w przewidywanej lokalizacji dokowania. Aby określić tryb dokowania dla okienka, wywołaj metodę CBasePane::SetDockingMode
. Aby uzyskać więcej informacji na temat inteligentnego dokowania, zobacz CDockingManager::GetSmartDockingParams
.
CDockablePane::GetDragSensitivity
Zwraca czułość przeciągania okienka dokowania.
static const CSize& GetDragSensitivity();
Wartość zwracana
Obiekt CSize
zawierający szerokość i wysokość w pikselach prostokąta wyśrodkowanego na punkcie przeciągania. Operacja przeciągania nie rozpoczyna się, dopóki wskaźnik myszy nie zostanie przeniesiony poza ten prostokąt.
CDockablePane::GetLastPercentInPaneContainer
Pobiera procent miejsca zajmowanego przez okienko w kontenerze (CPaneContainer
Klasa).
int GetLastPercentInPaneContainer() const;
Wartość zwracana
int
określający procent miejsca zajmowanego przez okienko w kontenerze.
Uwagi
Ta metoda jest używana, gdy kontener dostosowuje jego układ.
CDockablePane::GetTabArea
Pobiera obszar karty dla okienka.
virtual void GetTabArea(
CRect& rectTabAreaTop,
CRect& rectTabAreaBottom) const;
Parametry
rectTabAreaTop
[in] GetTabArea
wypełnia tę zmienną obszarem tabulacji, jeśli karty znajdują się w górnej części okienka. Jeśli karty znajdują się w dolnej części okienka, ta zmienna jest wypełniona pustym prostokątem.
rectTabAreaBottom
[in] GetTabArea
wypełnia tę zmienną obszarem tabulacji, jeśli karty znajdują się w dolnej części okienka. Jeśli karty znajdują się w górnej części okienka, ta zmienna jest wypełniona pustym prostokątem.
Uwagi
Ta metoda jest używana tylko w klasach, które pochodzą z CDockablePane
i mają karty. Aby uzyskać więcej informacji, zobacz CTabbedPane::GetTabArea
i CMFCOutlookBar::GetTabArea
.
CDockablePane::GetTabbedPaneRTC
Zwraca informacje o klasie środowiska uruchomieniowego dotyczące okna z kartami utworzonego podczas dokowania innego okienka do bieżącego okienka.
CRuntimeClass* GetTabbedPaneRTC() const;
Wartość zwracana
Informacje o klasie środowiska uruchomieniowego dla okienka z możliwością dokowania.
Uwagi
Wywołaj tę metodę, aby pobrać informacje o klasie środowiska uruchomieniowego dla okienk z kartami, które są tworzone dynamicznie. Może się tak zdarzyć, gdy użytkownik przeciąga jedno okienko do podpisu innego okienka lub jeśli wywołasz metodę CDockablePane::AttachToTabWnd
programowo, aby programowo utworzyć okienko z kartami z dwóch okienk z możliwością dokowania.
Informacje o klasie środowiska uruchomieniowego można ustawić, wywołując metodę CDockablePane::SetTabbedPaneRTC
.
CDockablePane::HasAutoHideMode
Określa, czy okienko dokowania można przełączyć do trybu automatycznego ukrywania.
virtual BOOL HasAutoHideMode() const;
Wartość zwracana
TRUE
, jeśli okienko dokowania można przełączyć do trybu automatycznego ukrywania; w przeciwnym razie FALSE
.
Uwagi
Zastąp tę metodę w klasie pochodnej, aby wyłączyć tryb automatycznego ukrywania dla określonego okienka z możliwością dokowania.
CDockablePane::HitTest
Określa lokalizację w okienku, w którym użytkownik klika mysz.
virtual int HitTest(
CPoint point,
BOOL bDetectCaption = FALSE);
Parametry
point
[in] Określa punkt do przetestowania.
bDetectCaption
[in] TRUE
, jeśli HTCAPTION
powinny zostać zwrócone, jeśli punkt znajduje się na podpisie okienka; w przeciwnym razie FALSE
.
Wartość zwracana
Jedna z następujących wartości:
HTNOWHERE
, jeślipoint
nie znajduje się w okienku dokowania.HTCLIENT
, jeślipoint
znajduje się w obszarze klienta okienka z możliwością dokowania.HTCAPTION
, jeślipoint
znajduje się w obszarze podpisu okienka z możliwością dokowania.AFX_HTCLOSE
, jeślipoint
znajduje się na przycisku zamykania.HTMAXBUTTON
, jeślipoint
jest na przycisku pinezki.
CDockablePane::IsAutohideAllEnabled
Wskazuje, czy okienko dokowania i wszystkie inne okienka w kontenerze można przełączyć na tryb automatycznego ukrywania.
virtual BOOL IsAutohideAllEnabled() const;
Wartość zwracana
TRUE
, jeśli okienko dokowania i wszystkie inne okienka w kontenerze, można przełączyć na tryb automatycznego ukrywania; w przeciwnym razie FALSE
.
Uwagi
Użytkownik włącza tryb automatycznego ukrywania, klikając przycisk przypinania dokowania przytrzymując Ctrl
Aby włączyć lub wyłączyć to zachowanie, wywołaj metodę CDockablePane::EnableAutohideAll
.
CDockablePane::IsAutoHideMode
Określa, czy okienko jest w trybie automatycznego ukrywania.
virtual BOOL IsAutoHideMode() const;
Wartość zwracana
TRUE
, jeśli okienko dokowania jest w trybie automatycznego ukrywania; w przeciwnym razie FALSE
.
CDockablePane::IsDocked
Określa, czy bieżące okienko jest zadokowane.
virtual BOOL IsDocked() const;
Wartość zwracana
TRUE
, jeśli okienko z możliwością dokowania nie należy do okna miniframe lub jeśli unosi się w oknie miniframe z innym okienkiem.
FALSE
jeśli okienko jest elementem podrzędnym okna miniframe i nie ma żadnych innych okienek należących do okna miniframe.
Uwagi
Aby określić, czy okienko jest zadokowane do głównego okna ramowego, wywołaj metodę CDockablePane::GetDefaultPaneDivider
. Jeśli metoda zwraca wskaźnik inny niżNULL
, okienko jest zadokowane w głównym oknie ramowym.
CDockablePane::IsHideInAutoHideMode
Określa zachowanie okienka, które jest w trybie automatycznego ukrywania, jeśli jest wyświetlane (lub ukryte), wywołując CDockablePane::ShowPane
.
virtual BOOL IsHideInAutoHideMode() const;
Wartość zwracana
TRUE
, jeśli okienko dokowania powinno być ukryte w trybie automatycznego ukrywania; w przeciwnym razie FALSE
.
Uwagi
Gdy okienko z możliwością dokowania jest w trybie automatycznego ukrywania, zachowuje się inaczej podczas wywoływania ShowPane
w celu ukrycia lub wyświetlenia okienka. To zachowanie jest kontrolowane przez statyczny element członkowski CDockablePane::m_bHideInAutoHideMode
. Jeśli ten element członkowski jest TRUE
, okienko z możliwością dokowania i powiązanym z nią automatycznym paskiem narzędzi lub przyciskiem automatycznego ukrywania jest ukryte lub wyświetlane podczas wywoływania ShowPane
. W przeciwnym razie okienko z możliwością dokowania jest aktywowane lub dezaktywowane, a jego powiązany autohide pasek narzędzi lub przycisk autohide są zawsze widoczne.
Zastąp tę metodę w klasie pochodnej, aby zmienić domyślne zachowanie poszczególnych okienek.
Wartość domyślna m_bHideInAutoHideMode
to FALSE
.
CDockablePane::IsInFloatingMultiPaneFrameWnd
Określa, czy okienko znajduje się w oknie ramek z wieloma okienkami ( CMultiPaneFrameWnd Class
).
virtual BOOL IsInFloatingMultiPaneFrameWnd() const;
Wartość zwracana
TRUE
, jeśli okienko znajduje się w oknie ramki z wieloma okienkami; w przeciwnym razie FALSE
.
Uwagi
CDockablePane::IsResizable
Określa, czy okienko jest możliwe do zmiany rozmiaru.
virtual BOOL IsResizable() const;
Wartość zwracana
TRUE
, jeśli okienko jest możliwe do zmiany rozmiaru; w przeciwnym razie FALSE
.
Uwagi
Domyślnie okienka z możliwością dokowania można zmieniać rozmiar. Aby zapobiec zmianie rozmiaru, przesłoń tę metodę w klasie pochodnej i zwróć FALSE
. Należy pamiętać, że wartość FALSE
prowadzi do niepowodzenia ASSERT
w CPane::DockPane
. Zamiast tego użyj CDockingManager::AddPane
, aby zadokować okienko w ramce nadrzędnej.
Nie można zmieniać rozmiaru okienek ani nie może wprowadzać trybu automatycznego ukrywania ani znajdować się na zewnętrznej krawędzi ramki nadrzędnej.
CDockablePane::IsTabLocationBottom
Określa, czy karty znajdują się w górnej lub dolnej części okienka.
virtual BOOL IsTabLocationBottom() const;
Wartość zwracana
TRUE
, jeśli karty znajdują się w dolnej części okienka; FALSE
, jeśli karty znajdują się w górnej części okienka.
Uwagi
Aby uzyskać więcej informacji, zobacz CTabbedPane::IsTabLocationBottom
.
CDockablePane::IsTracked
Określa, czy okienko jest przenoszone przez użytkownika.
BOOL IsTracked() const;
Wartość zwracana
TRUE
, jeśli okienko jest przenoszone; w przeciwnym razie FALSE
.
CDockablePane::IsVisible
Określa, czy bieżące okienko jest widoczne.
virtual BOOL IsVisible() const;
Wartość zwracana
TRUE
, jeśli okienko z możliwością dokowania jest widoczne; w przeciwnym razie FALSE
.
Uwagi
Wywołaj tę metodę, aby określić, czy okienko z możliwością dokowania jest widoczne. Tej metody można użyć zamiast wywoływania CWnd::IsWindowVisible
lub testowania stylu WS_VISIBLE
. Zwrócony stan widoczności zależy od tego, czy tryb autohide jest włączony, czy wyłączony oraz od wartości właściwości CDockablePane::IsHideInAutoHideMode
.
Jeśli okienko z możliwością dokowania jest w trybie automatycznego ukrywania, a IsHideInAutoHideMode
zwraca FALSE
stan widoczności jest zawsze FALSE
.
Jeśli okienko dokowania jest w trybie automatycznego ukrywania, a IsHideInAutoHideMode
zwraca TRUE
stan widoczności zależy od stanu widoczności powiązanego paska narzędzi automatycznego ukrywania.
Jeśli okienko z możliwością dokowania nie jest w trybie automatycznego ukrywania, stan widoczności jest określany przez metodę CBasePane::IsVisible
.
##
CDockablePane::LoadState
Tylko do użytku wewnętrznego. Aby uzyskać więcej informacji, zobacz kod źródłowy znajdujący się w folderze mfc
instalacji programu Visual Studio. Na przykład %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
Określa, czy automatycznie ukrywana animacja okienka z możliwością dokowania jest wyłączona.
AFX_IMPORT_DATA static BOOL m_bDisableAnimation;
CDockablePane::m_bHideInAutoHideMode
Określa zachowanie okienka, gdy okienko jest w trybie automatycznego ukrywania.
AFX_IMPORT_DATA static BOOL m_bHideInAutoHideMode;
Uwagi
Ta wartość ma wpływ na wszystkie okienka dokowania w aplikacji.
Jeśli ustawisz ten element członkowski na TRUE
, okienka dokowania są ukryte lub wyświetlane przy użyciu powiązanych automatycznie ukrywanych pasków narzędzi i przycisków podczas wywoływania CDockablePane::ShowPane
.
Jeśli ustawisz ten element członkowski na FALSE
, okienka z możliwością dokowania są aktywowane lub dezaktywowane podczas wywoływania CDockablePane::ShowPane
.
CDockablePane::m_nSlideSteps
Określa szybkość animacji okienka, gdy jest w trybie autohide.
AFX_IMPORT_DATA static int m_nSlideSteps;
Uwagi
Aby uzyskać szybszy efekt animacji, zmniejsz tę wartość. W przypadku wolniejszego efektu animacji zwiększ tę wartość.
CDockablePane::OnAfterChangeParent
Aby uzyskać więcej informacji, zobacz kod źródłowy znajdujący się w folderze mfc
instalacji programu Visual Studio. Na przykład %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc
.
virtual void OnAfterChangeParent(CWnd* pWndOldParent);
Parametry
[in] pWndOldParent
Uwagi
CDockablePane::OnAfterDockFromMiniFrame
Wywoływana przez platformę, gdy pływający pasek dokowania dokuje w oknie ramowym.
virtual void OnAfterDockFromMiniFrame();
Uwagi
Domyślnie ta metoda nic nie robi.
CDockablePane::OnBeforeChangeParent
Struktura wywołuje tę metodę przed zmianą elementu nadrzędnego okienka.
virtual void OnBeforeChangeParent(
CWnd* pWndNewParent,
BOOL bDelay = FALSE);
Parametry
pWndNewParent
[in] Wskaźnik do nowego okna nadrzędnego.
bDelay
[in] Wartość logiczna określająca, czy opóźnić ponowne obliczanie układu dokowania, jeśli okienko jest oddokowane. Aby uzyskać więcej informacji, zobacz CDockablePane::UndockPane
.
Uwagi
Jeśli okienko jest zadokowane, a nowy element nadrzędny nie zezwala na dokowanie, ta metoda oddokuje okienko.
Jeśli okienko jest konwertowane na dokument z kartami, ta metoda przechowuje ostatnie położenie dokowania. Struktura używa ostatniego położenia dokowania, aby przywrócić położenie okienka po przekonwertowaniu z powrotem na stan zadokowany.
CDockablePane::OnBeforeFloat
Struktura wywołuje tę metodę przed przejściem okienka do stanu zmiennoprzecinkowego.
virtual BOOL OnBeforeFloat(
CRect& rectFloat,
AFX_DOCK_METHOD dockMethod);
Parametry
rectFloat
[in] Określa położenie i rozmiar okienka, gdy znajduje się on w stanie zmiennoprzecinkowa.
dockMethod
[in] Określa metodę dokowania. Aby uzyskać listę możliwych wartości, zobacz CPane::DockPane
.
Wartość zwracana
TRUE
, jeśli okienko może być zmiennoprzecinkowe; w przeciwnym razie FALSE
.
Uwagi
Ta metoda jest wywoływana przez platformę, gdy okienko ma upłynąć zmiennoprzecinkowe. Tę metodę można zastąpić w klasie pochodnej, jeśli chcesz wykonać jakiekolwiek przetwarzanie przed upłynięciem okienka.
CDockablePane::OnPressButtons
Wywoływana, gdy użytkownik naciska przycisk podpisu inny niż przycisk AFX_HTCLOSE
i AFX_HTMAXBUTTON
.
virtual void OnPressButtons(UINT nHit);
Parametry
nHit
[in] Ten parametr nie jest używany.
Uwagi
Jeśli dodasz przycisk niestandardowy do podpisu okienka z możliwością dokowania, przesłoń tę metodę, aby otrzymywać powiadomienia po naciśnięciu przycisku przez użytkownika.
CDockablePane::OnSlide
Wywoływana przez platformę w celu animowania okienka w trybie automatycznego ukrywania.
virtual void OnSlide(BOOL bSlideOut);
Parametry
bSlideOut
[in] TRUE
, aby wyświetlić okienko; FALSE
, aby ukryć okienko.
Uwagi
Zastąp tę metodę w klasie pochodnej, aby zaimplementować niestandardowe efekty autohide.
CDockablePane::RemoveFromDefaultPaneDividier
Struktura wywołuje tę metodę, gdy okienko jest oddokowane.
void RemoveFromDefaultPaneDividier();
Uwagi
Ta metoda ustawia domyślny podział okienka na NULL
i usuwa okienko z kontenera.
CDockablePane::ReplacePane
Zamienia okienko na określone okienko.
BOOL ReplacePane(
CDockablePane* pBarToReplaceWith,
AFX_DOCK_METHOD dockMethod,
BOOL bRegisterWithFrame = FALSE);
Parametry
pBarToReplaceWith
[in] Wskaźnik do okienka z możliwością dokowania.
dockMethod
[in] Nieużytne.
bRegisterWithFrame
[in] Jeśli TRUE
, nowe okienko zostanie zarejestrowane w menedżerze dokowania elementu nadrzędnego starego okienka. Nowe okienko jest wstawione do indeksu starego okienka na liście okienek obsługiwanych przez menedżera dokowania.
Wartość zwracana
TRUE
, jeśli zastąpienie zakończy się pomyślnie; w przeciwnym razie FALSE
.
CDockablePane::RestoreDefaultPaneDivider
Gdy okienko jest deserializowane, struktura wywołuje tę metodę, aby przywrócić domyślny podział okienka.
void RestoreDefaultPaneDivider();
Uwagi
Przywrócony domyślny podział okienka zastępuje bieżący domyślny podział okienka, jeśli istnieje.
CDockablePane::SetAutoHideMode
Przełącza okienko dokowania między trybem widocznym i automatycznym.
virtual CMFCAutoHideBar* SetAutoHideMode(
BOOL bMode,
DWORD dwAlignment,
CMFCAutoHideBar* pCurrAutoHideBar = NULL,
BOOL bUseTimer = TRUE);
Parametry
bMode
[in] TRUE
włączyć tryb automatycznego ukrywania; FALSE
włączyć zwykły tryb dokowania.
dwAlignment
[in] Określa wyrównanie okienka autohide do utworzenia.
pCurrAutoHideBar
[in, out] Wskaźnik do bieżącego paska narzędzi autohide. Może być NULL
.
bUseTimer
[in] Określa, czy używać efektu autohide, gdy użytkownik przełącza okienko w tryb autohide, czy ukrywa okienko natychmiast.
Wartość zwracana
Automatycznie ukrywany pasek narzędzi, który został utworzony w wyniku przełączenia do trybu automatycznego ukrycia lub NULL
.
Uwagi
Struktura wywołuje tę metodę, gdy użytkownik kliknie przycisk pinezki, aby przełączyć okienko z możliwością dokowania do trybu automatycznego lub zwykłego trybu dokowania.
Wywołaj tę metodę, aby przełączyć okienko z możliwością dokowania w trybie programowym. Okienko musi być zadokowane do głównego okna ramowego (CDockablePane::GetDefaultPaneDivider
musi zwrócić prawidłowy wskaźnik do CPaneDivider
).
CDockablePane::SetAutoHideParents
Ustawia przycisk automatycznego ukrywania i automatycznie ukrywa pasek narzędzi okienka.
void SetAutoHideParents(
CMFCAutoHideBar* pToolBar,
CMFCAutoHideButton* pBtn);
Parametry
pToolBar
[in] Wskaźnik do paska narzędzi automatycznego ukrywania.
pBtn
[in] Wskaźnik do przycisku automatycznego ukrywania.
CDockablePane::SetLastPercentInPaneContainer
Ustawia procent miejsca zajmowanego przez okienko w kontenerze.
void SetLastPercentInPaneContainer(int n);
Parametry
n
[in] int
określający procent miejsca zajmowanego przez okienko w kontenerze.
Uwagi
Platforma dostosowuje okienko, aby używać nowej wartości podczas ponownego obliczania układu.
CDockablePane::SetRestoredDefaultPaneDivider
Ustawia przywrócony domyślny podział okienka.
void SetRestoredDefaultPaneDivider(HWND hRestoredSlider);
Parametry
hRestoredSlider
[in] Uchwyt do podziału okienka (suwak).
Uwagi
Przywrócony domyślny podział okienka jest uzyskiwany po deserializacji okienka. Aby uzyskać więcej informacji, zobacz CDockablePane::RestoreDefaultPaneDivider
.
CDockablePane::SetTabbedPaneRTC
Ustawia informacje o klasie środowiska uruchomieniowego dla okna z kartami, które jest tworzone podczas łączenia dwóch okienek.
void SetTabbedPaneRTC(CRuntimeClass* pRTC);
Parametry
pRTC
[in] Informacje o klasie środowiska uruchomieniowego dla okienka z kartami.
Uwagi
Wywołaj tę metodę, aby ustawić informacje o klasie środowiska uruchomieniowego dla okienk z kartami, które są tworzone dynamicznie. Może się tak zdarzyć, gdy użytkownik przeciąga jedno okienko do podpisu innego okienka lub jeśli wywołasz metodę CDockablePane::AttachToTabWnd
programowo, aby programowo utworzyć okienko z kartami z dwóch okienk z możliwością dokowania.
Domyślna klasa środowiska uruchomieniowego jest ustawiana zgodnie z parametrem dwTabbedStyle
CDockablePane::Create
i CDockablePane::CreateEx
. Aby dostosować nowe okienka z kartami, utwórz klasę z jednej z następujących klas:
klas
klas
Następnie wywołaj tę metodę za pomocą wskaźnika do informacji o klasie środowiska uruchomieniowego.
CDockablePane::ShowPane
Wyświetla lub ukrywa okienko.
virtual void ShowPane(
BOOL bShow,
BOOL bDelay,
BOOL bActivate);
Parametry
bShow
[in] TRUE
, aby wyświetlić okienko; FALSE
, aby ukryć okienko.
bDelay
[in] TRUE
opóźnić dostosowywanie układu dokowania; FALSE
, aby natychmiast dostosować układ dokowania.
bActivate
[in] TRUE
uaktywnić okienko po wyświetleniu; w przeciwnym razie FALSE
.
Uwagi
Wywołaj tę metodę zamiast CWnd::ShowWindow
podczas wyświetlania lub ukrywania okienk z możliwością dokowania.
CDockablePane::Slide
Animuje okienko, które jest w trybie automatycznego ukrywania.
virtual void Slide(
BOOL bSlideOut,
BOOL bUseTimer = TRUE);
Parametry
bSlideOut
[in] TRUE
, aby wyświetlić okienko; FALSE
, aby ukryć okienko.
bUseTimer
[in] TRUE
pokazać lub ukryć okienko za pomocą efektu autohide; FALSE
, aby wyświetlić lub ukryć okienko natychmiast.
Uwagi
Struktura wywołuje tę metodę, aby animować okienko, które jest w trybie autohide.
Ta metoda używa wartości CDockablePane::m_nSlideDefaultTimeOut
, aby określić limit czasu dla efektu slajdu. Wartość domyślna limitu czasu wynosi 1. Jeśli dostosujesz algorytm autohide, zmodyfikuj ten element członkowski, aby zmienić limit czasu.
CDockablePane::ToggleAutoHide
Przełącza okienko między trybem zawsze widocznym i automatycznym.
virtual void ToggleAutoHide();
Uwagi
Ta metoda przełącza tryb automatycznego ukrywania okienka przez wywołanie CDockablePane::SetAutoHideMode
.
CDockablePane::UndockPane
Oddokuje okienko z głównego okna ramowego lub kontenera okien miniframe.
virtual void UndockPane(BOOL bDelay = FALSE);
Parametry
bDelay
[in] TRUE
opóźnić obliczanie układu dokowania; FALSE
, aby natychmiast ponownie obliczyć układ dokowania.
Uwagi
Wywołaj tę metodę, aby oddokować okienko z okna głównego ramki lub z kontenera okien z wieloma miniframe (okienko unoszące się w jednym oknie miniframe z innymi okienkami).
Przed wykonaniem dowolnej operacji zewnętrznej, która nie jest wykonywana przez CDockingManager
, należy oddokować okienko. Na przykład należy oddokować okienko, aby programowo przenieść je z jednej lokalizacji do innej.
Platforma automatycznie oddokuje okienka przed ich zniszczeniem.
Zobacz też
wykres hierarchii
klas
klas