Klasa CMFCAutoHideBar
Klasa to specjalna CMFCAutoHideBar
klasa paska narzędzi, która implementuje funkcję automatycznego ukrywania.
Aby uzyskać więcej informacji, zobacz kod źródłowy znajdujący się w folderze VC\atlmfc\src\mfc instalacji programu Visual Studio.
Składnia
class CMFCAutoHideBar : public CPane
Elementy członkowskie
Konstruktory publiczne
Nazwa/nazwisko | opis |
---|---|
CMFCAutoHideBar::CMFCAutoHideBar |
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
CMFCAutoHideBar::AddAutoHideWindow | |
CMFCAutoHideBar::AllowShowOnPaneMenu | (Przesłania CPane::AllowShowOnPaneMenu ). |
CMFCAutoHideBar::CalcFixedLayout | (Przesłonięcia) CBasePane::CalcFixedLayout). |
CMFCAutoHideBar::Create | Tworzy pasek sterowania i dołącza go do obiektu CPane . (Przesłonięcia) CPane::Create.) |
CMFCAutoHideBar::GetFirstAHWindow | |
CMFCAutoHideBar::GetVisibleCount | |
CMFCAutoHideBar::OnShowControlBarMenu | Wywoływana przez platformę, gdy ma być wyświetlane specjalne menu okienka. (Przesłonięcia) CPane::OnShowControlBarMenu.) |
CMFCAutoHideBar::RemoveAutoHideWindow | |
CMFCAutoHideBar::SetActiveInGroup | (Przesłonięcia) CPane::SetActiveInGroup. |
CMFCAutoHideBar::SetRecentVisibleState | |
CMFCAutoHideBar::ShowAutoHideWindow | |
CMFCAutoHideBar::StretchPane | Rozciąga okienko w pionie lub w poziomie. (Przesłonięcia) CBasePane::StretchPane.) |
CMFCAutoHideBar::UnSetAutoHideMode | |
CMFCAutoHideBar::UpdateVisibleState |
Składowe danych
Nazwa/nazwisko | opis |
---|---|
CMFCAutoHideBar::m_nShowAHWndDelay | Opóźnienie czasu między momentem, w którym użytkownik umieszcza kursor myszy na klasie CMFCAutoHideButton, a momentem, w którym platforma wyświetla skojarzone okno. |
Uwagi
Gdy użytkownik przełącza okienko docku do trybu automatycznego ukrywania, platforma automatycznie tworzy CMFCAutoHideBar
obiekt. Tworzy również niezbędne obiekty CAutoHideDockSite i CMFCAutoHideButton . Każdy CAutoHideDockSite
obiekt jest skojarzony z pojedynczym CMFCAutoHideButton
obiektem .
Klasa CMFCAutoHideBar
implementuje wyświetlanie CAutoHideDockSite
obiektu, gdy wskaźnik myszy użytkownika znajduje się na CMFCAutoHideButton
obiekcie . Gdy pasek narzędzi odbiera komunikat WM_MOUSEMOVE, CMFCAutoHideBar
uruchamia czasomierz. Po zakończeniu czasomierza wysyła na pasku narzędzi WM_TIMER powiadomienie o zdarzeniu. Pasek narzędzi obsługuje to zdarzenie, sprawdzając, czy wskaźnik myszy jest umieszczony na tym samym przycisku automatycznego ukrywania, który został umieszczony po uruchomieniu czasomierza. Jeśli tak jest, zostanie wyświetlony dołączony CAutoHideDockSite
.
Możesz kontrolować długość opóźnienia czasomierza, ustawiając wartość m_nShowAHWndDelay
. Wartość domyślna to 400 ms.
Przykład
W poniższym przykładzie pokazano, jak skonstruować CMFCAutoHideBar
obiekt i używać jego GetDockSiteRow
metody.
CMFCAutoHideBar *pParentBar = new CMFCAutoHideBar();
CDockingPanesRow *pParentRow = pParentBar->GetDockSiteRow();
Hierarchia dziedziczenia
Wymagania
Nagłówek: afxautohidebar.h
CMFCAutoHideBar::AddAutoHideWindow
Dodaje funkcje do CDockablePane
okna, które umożliwia automatyczne ukrywanie.
CMFCAutoHideButton* AddAutoHideWindow(
CDockablePane* pAutoHideWnd,
DWORD dwAlignment);
Parametry
pAutoHideWnd
[in] Okno, które chcesz ukryć.
dwAlignment
[in] Wartość określająca wyrównanie przycisku automatycznego ukrywania za pomocą okna aplikacji.
Wartość zwracana
Uwagi
Parametr dwAlignment wskazuje, gdzie w aplikacji znajduje się przycisk automatycznego ukrywania. Parametr może być jedną z następujących wartości:
CBRS_ALIGN_LEFT
CBRS_ALIGN_RIGHT
CBRS_ALIGN_TOP
CBRS_ALIGN_BOTTOM
CMFCAutoHideBar::AllowShowOnPaneMenu
virtual BOOL AllowShowOnPaneMenu() const;
Wartość zwracana
Uwagi
CMFCAutoHideBar::CalcFixedLayout
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
Parametry
[in] bStretch
[in] bHorz
Wartość zwracana
Uwagi
CMFCAutoHideBar::CMFCAutoHideBar
Tworzy obiekt CMFCAutoHideBar.
CMFCAutoHideBar();
Uwagi
CMFCAutoHideBar::Create
virtual BOOL Create(
LPCTSTR lpszClassName,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID,
DWORD dwControlBarStyle = AFX_DEFAULT_PANE_STYLE,
CCreateContext* pContext = NULL);
Parametry
lpszClassName
dwStyle
Rect
pParentWnd
Nid
dwControlBarStyle
pContext
Wartość zwracana
Uwagi
CMFCAutoHideBar::GetFirstAHWindow
Zwraca wskaźnik do pierwszego okna automatycznego ukrywania w aplikacji.
CDockablePane* GetFirstAHWindow();
Wartość zwracana
Pierwsze okno automatycznego ukrywania w aplikacji lub wartość NULL, jeśli nie istnieje.
Uwagi
CMFCAutoHideBar::GetVisibleCount
Pobiera liczbę widocznych przycisków automatycznego ukrywania.
int GetVisibleCount();
Wartość zwracana
Zwraca liczbę widocznych przycisków automatycznego ukrywania.
Uwagi
CMFCAutoHideBar::m_nShowAHWndDelay
Opóźnienie czasu między momentem, w którym użytkownik umieszcza kursor myszy na klasie CMFCAutoHideButton, a momentem, w którym platforma wyświetla skojarzone okno.
int CMFCAutoHideBar::m_nShowAHWndDelay = 400;
Uwagi
Gdy użytkownik umieszcza kursor myszy na CMFCAutoHideButton
obiekcie , występuje niewielkie opóźnienie, zanim platforma wyświetli skojarzone okno. Ten parametr określa długość tego opóźnienia w milisekundach.
CMFCAutoHideBar::OnShowControlBarMenu
virtual BOOL OnShowControlBarMenu(CPoint);
Parametry
[in] CPoint
Wartość zwracana
Uwagi
CMFCAutoHideBar::RemoveAutoHideWindow
Usuwa i niszczy okno automatycznego ukrywania.
BOOL RemoveAutoHideWindow(CDockablePane* pAutoHideWnd);
Parametry
CDockablePane* pAutoHideWnd okno automatycznego ukrywania do usunięcia.
Wartość zwracana
Wartość TRUE, jeśli operacja zakończyła się pomyślnie; w przeciwnym razie FAŁSZ.
Uwagi
CMFCAutoHideBar::SetActiveInGroup
Flaguje pasek automatycznego ukrywania jako aktywny.
virtual void SetActiveInGroup(BOOL bActive);
Parametry
[in] Wartość BOOL bActive TRUE, aby ustawić wartość active; w przeciwnym razie WARTOŚĆ FALSE.
Uwagi
Zobacz CPane::SetActiveInGroup.
CMFCAutoHideBar::SetRecentVisibleState
void SetRecentVisibleState(BOOL bState);
Parametry
bState
[in] Stan do ustawienia.
Uwagi
CMFCAutoHideBar::ShowAutoHideWindow
Wyświetla okno automatycznego ukrywania.
BOOL ShowAutoHideWindow(
CDockablePane* pAutoHideWnd,
BOOL bShow,
BOOL bDelay);
Parametry
pAutoHideWnd
[in] Okno do wyświetlenia.
bShow
[in] Wartość TRUE, aby wyświetlić okno.
bDelay
[in] Ten parametr jest ignorowany.
Wartość zwracana
Wartość TRUE, jeśli operacja zakończyła się pomyślnie; w przeciwnym razie FAŁSZ.
Uwagi
CMFCAutoHideBar::StretchPane
Zmienia rozmiar paska automatycznego ukrywania w stanie zwiniętym CMFCAutoHideButton
, aby dopasować go do obiektu.
virtual CSize StretchPane(
int nLength,
BOOL bVert);
Parametry
nLength
[in] Wartość jest nieużywany w implementacji podstawowej. W implementacjach pochodnych użyj tej wartości, aby wskazać długość okienka o zmienionym rozmiarze.
bVert
[in] Wartość jest nieużywany w implementacji podstawowej. W implementacjach pochodnych użyj wartości TRUE, aby obsłużyć przypadek, w którym pasek automatycznego ukrywania jest zwinięty w pionie, a w przypadku, gdy pasek automatycznego ukrywania jest zwinięty w poziomie.
Wartość zwracana
Wynikowy rozmiar okienka o zmienionym rozmiarze.
Uwagi
Klasy pochodne mogą zastąpić tę metodę, aby dostosować zachowanie.
CMFCAutoHideBar::UnSetAutoHideMode
Wyłącza tryb automatycznego ukrywania dla grupy pasków automatycznego ukrywania.
void UnSetAutoHideMode(CDockablePane* pFirstBarInGroup)
Parametry
[in] pFirstBarInGroup Wskaźnik A do pierwszego paska automatycznego ukrywania w grupie.
Uwagi
CMFCAutoHideBar::UpdateVisibleState
Wywoływana przez strukturę, gdy pasek automatycznego ukrywania musi zostać ponownie wyrysowany.
void UpdateVisibleState();
Uwagi
Zobacz też
Wykres hierarchii
Klasy
Klasa CPane
Klasa CAutoHideDockSite
Klasa CMFCAutoHideButton