Classe CMFCAutoHideBar
La classe CMFCAutoHideBar
è una classe della barra degli strumenti speciale che implementa la funzionalità Nascondi automaticamente.
Per altri dettagli, vedere il codice sorgente che si trova nella cartella VC\atlmfc\src\mfc dell'installazione di Visual Studio.
Sintassi
class CMFCAutoHideBar : public CPane
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
CMFCAutoHideBar::CMFCAutoHideBar |
Metodi pubblici
Nome | Descrizione |
---|---|
CMFCAutoHideBar::AddAutoHideWindow | |
CMFCAutoHideBar::AllowShowOnPaneMenu | Esegue l'override di CPane::AllowShowOnPaneMenu . |
CMFCAutoHideBar::CalcFixedLayout | (sostituzioni )CBasePane::CalcFixedLayout. |
CMFCAutoHideBar::Create | Crea una barra di controllo e la collega all'oggetto CPane . (sostituzioni )CPane::Create. |
CMFCAutoHideBar::GetFirstAHWindow | |
CMFCAutoHideBar::GetVisibleCount | |
CMFCAutoHideBar::OnShowControlBarMenu | Chiamata eseguita dal framework quando un menu di riquadri speciale sta per essere visualizzato. (sostituzioni )CPane::OnShowControlBarMenu. |
CMFCAutoHideBar::RemoveAutoHideWindow | |
CMFCAutoHideBar::SetActiveInGroup | (sostituzioni )CPane::SetActiveInGroup. |
CMFCAutoHideBar::SetRecentVisibleState | |
CMFCAutoHideBar::ShowAutoHideWindow | |
CMFCAutoHideBar::StretchPane | Adatta un riquadro in verticale o in orizzontale. (sostituzioni )CBasePane::StretchPane.) |
CMFCAutoHideBar::UnSetAutoHideMode | |
CMFCAutoHideBar::UpdateVisibleState |
Membri dei dati
Nome | Descrizione |
---|---|
CMFCAutoHideBar::m_nShowAHWndDelay | Ritardo di tempo tra il momento in cui l'utente posiziona il cursore del mouse su una classe CMFCAutoHideButton e il momento in cui il framework mostra la finestra associata. |
Osservazioni:
Quando l'utente attiva un pannello dock di modalità Nascondi automaticamente, il framework crea automaticamente un oggetto CMFCAutoHideBar
. Crea anche gli oggetti CAutoHideDockSite e CMFCAutoHideButton necessari. Ogni oggetto CAutoHideDockSite
viene associato a un singolo CMFCAutoHideButton
.
La classe CMFCAutoHideBar
implementa la visualizzazione di un CAutoHideDockSite
quando il mouse di un utente passa sopra a un CMFCAutoHideButton
. Quando la barra degli strumenti riceve un messaggio di WM_MOUSEMOVE, CMFCAutoHideBar
avvia un timer. Quando il timer completa, invia alla barra degli strumenti una notifica degli eventi di WM_TIMER. La barra degli strumenti gestisce questo evento controllando che il puntatore del mouse sia posizionato sullo stesso pulsante Nascondi automaticamente inserito quando il timer è stato avviato. In tal caso, viene visualizzato l'oggetto CAutoHideDockSite
allegato.
È possibile controllare la durata del ritardo del timer impostando m_nShowAHWndDelay
. Il valore predefinito è 400 ms.
Esempio
L'esempio seguente illustra come costruire un oggetto CMFCAutoHideBar
e usare il relativo metodo GetDockSiteRow
.
CMFCAutoHideBar *pParentBar = new CMFCAutoHideBar();
CDockingPanesRow *pParentRow = pParentBar->GetDockSiteRow();
Gerarchia di ereditarietà
Requisiti
Intestazione: afxautohidebar.h
CMFCAutoHideBar::AddAutoHideWindow
Aggiunge a una finestra CDockablePane
la funzionalità per abilitare Nascondi automaticamente.
CMFCAutoHideButton* AddAutoHideWindow(
CDockablePane* pAutoHideWnd,
DWORD dwAlignment);
Parametri
pAutoHideWnd
[in] Finestra da nascondere.
dwAlignment
[in] Valore che specifica l'allineamento del pulsante nascondi automaticamente con la finestra dell'applicazione.
Valore restituito
Osservazioni:
Il parametro dwAlignment indica dove risiede il pulsante nascondi automaticamente nell'applicazione. Il parametro può essere su uno dei valori seguenti:
CBRS_ALIGN_LEFT
CBRS_ALIGN_RIGHT
CBRS_ALIGN_TOP
CBRS_ALIGN_BOTTOM
CMFCAutoHideBar::AllowShowOnPaneMenu
virtual BOOL AllowShowOnPaneMenu() const;
Valore restituito
Osservazioni:
CMFCAutoHideBar::CalcFixedLayout
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
Parametri
[in] bStretch
[in] bHorz
Valore restituito
Osservazioni:
CMFCAutoHideBar::CMFCAutoHideBar
Costruisce un oggetto CMFCAutoHideBar.
CMFCAutoHideBar();
Osservazioni:
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);
Parametri
lpszClassName
dwStyle
rect
pParentWnd
nID
dwControlBarStyle
pContext
Valore restituito
Osservazioni:
CMFCAutoHideBar::GetFirstAHWindow
Restituisce un puntatore alla prima finestra Nascondi automaticamente nell'applicazione.
CDockablePane* GetFirstAHWindow();
Valore restituito
Prima finestra Nascondi automaticamente nell'applicazione oppure NULL se non ne è presente nessuna.
Osservazioni:
CMFCAutoHideBar::GetVisibleCount
Ottiene il numero di pulsanti Nascondi automaticamente visibili.
int GetVisibleCount();
Valore restituito
Restituisce il numero di pulsanti Nascondi automaticamente visibili.
Osservazioni:
CMFCAutoHideBar::m_nShowAHWndDelay
Ritardo di tempo tra il momento in cui l'utente posiziona il cursore del mouse su una classe CMFCAutoHideButton e il momento in cui il framework mostra la finestra associata.
int CMFCAutoHideBar::m_nShowAHWndDelay = 400;
Osservazioni:
Quando l'utente posiziona il cursore del mouse su un CMFCAutoHideButton
oggetto , si verifica un lieve ritardo prima che il framework visualizzi la finestra associata. Questo parametro determina la lunghezza di tale ritardo in millisecondi.
CMFCAutoHideBar::OnShowControlBarMenu
virtual BOOL OnShowControlBarMenu(CPoint);
Parametri
[in] CPoint
Valore restituito
Osservazioni:
CMFCAutoHideBar::RemoveAutoHideWindow
Rimuove ed elimina la finestra Nascondi automaticamente.
BOOL RemoveAutoHideWindow(CDockablePane* pAutoHideWnd);
Parametri
CDockablePane* pAutoHideWnd Finestra nascondi automaticamente da rimuovere.
Valore restituito
TRUE se l'operazione riesce; in caso contrario, FALSE.
Osservazioni:
CMFCAutoHideBar::SetActiveInGroup
Contrassegna una barra Nascondi automaticamente come attiva.
virtual void SetActiveInGroup(BOOL bActive);
Parametri
[in] BOOL bActive TRUE da impostare su attivo; in caso contrario, FALSE.
Osservazioni:
Vedere CPane::SetActiveInGroup.
CMFCAutoHideBar::SetRecentVisibleState
void SetRecentVisibleState(BOOL bState);
Parametri
bState
[in] Stato da impostare.
Osservazioni:
CMFCAutoHideBar::ShowAutoHideWindow
Mostra la finestra Nascondi automaticamente.
BOOL ShowAutoHideWindow(
CDockablePane* pAutoHideWnd,
BOOL bShow,
BOOL bDelay);
Parametri
pAutoHideWnd
[in] Finestra da visualizzare.
bShow
[in] TRUE per visualizzare la finestra.
bDelay
[in] Questo parametro viene ignorato.
Valore restituito
TRUE se l'operazione riesce; in caso contrario, FALSE.
Osservazioni:
CMFCAutoHideBar::StretchPane
Ridimensiona la barra Nascondi automaticamente nello stato compresso per adattare l'oggetto CMFCAutoHideButton
.
virtual CSize StretchPane(
int nLength,
BOOL bVert);
Parametri
nLength
[in] Il valore non è utilizzato nell'implementazione di base. In implementazioni derivate, usare questo valore per indicare la lunghezza del riquadro ridimensionato.
bVert
[in] Il valore non è utilizzato nell'implementazione di base. Nelle implementazioni derivate, usare TRUE per gestire il caso in cui la barra nascondi automaticamente viene compressa verticalmente e FALSE per il caso in cui la barra nascondi automaticamente viene compressa orizzontalmente.
Valore restituito
La dimensione risultante del riquadro ridimensionato.
Osservazioni:
Le classi derivate possono ignorare questo metodo per personalizzare il comportamento.
CMFCAutoHideBar::UnSetAutoHideMode
Disabilita la modalità Nascondi automaticamente per un gruppo di barre di tipo Nascondi automaticamente.
void UnSetAutoHideMode(CDockablePane* pFirstBarInGroup)
Parametri
[in] pFirstBarInGroup Puntatore alla prima barra nascondi automaticamente nel gruppo.
Osservazioni:
CMFCAutoHideBar::UpdateVisibleState
Chiamata dal framework quando è necessario ridisegnare la barra Nascondi automaticamente.
void UpdateVisibleState();
Osservazioni:
Vedi anche
Grafico della gerarchia
Classi
Classe CPane
Classe CAutoHideDockSite
Classe CMFCAutoHideButton