Classe CTabbedPane
Implementa la funzionalità di un riquadro con schede staccabili.
o altri dettagli, vedere il codice sorgente che si trova nella cartella VC\atlmfc\src\mfc dell'installazione di Visual Studio.
Sintassi
class CTabbedPane : public CBaseTabbedPane
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
CTabbedPane::CTabbedPane |
Costruttore predefinito. |
Metodi pubblici
Nome | Descrizione |
---|---|
CTabbedPane::D etachPane | (sostituzioni )CBaseTabbedPane::D etachPane.) |
CTabbedPane::EnableTabAutoColor | Abilita o disabilita la colorazione automatica delle schede. |
CTabbedPane::FloatTab | Sposta un riquadro, ma solo se il riquadro si trova attualmente in una scheda scollegabile. Esegue l'override di CBaseTabbedPane::FloatTab. |
CTabbedPane::GetTabArea | Restituisce le dimensioni e la posizione dell'area della scheda nella finestra a schede. |
CTabbedPane::GetTabWnd | |
CTabbedPane::HasAutoHideMode | Determina se il riquadro a schede può passare alla modalità Nascondi automaticamente. (sostituzioni )CBaseTabbedPane::HasAutoHideMode. |
CTabbedPane::IsTabLocationBottom | Determina se le schede si trovano nella parte inferiore della finestra. |
CTabbedPane::ResetTabs | Reimposta lo stato predefinito di tutti i riquadri a schede. |
CTabbedPane::SetTabAutoColors | Imposta un elenco di colori personalizzati può essere usato quando è abilitata la funzionalità Colore automatico. |
Membri dei dati
Nome | Descrizione |
---|---|
CTabbedPane::m_bTabsAlwaysTop | Posizione predefinita delle schede nell'applicazione. |
CTabbedPane::m_pTabWndRTC | Informazioni sulla classe di runtime per un oggetto personalizzato derivato da CMFCTabCtrl . |
Osservazioni:
Il framework crea automaticamente un'istanza di questa classe quando un utente collega un riquadro a un altro posizionando il puntatore del mouse sul titolo del secondo riquadro. Tutti i riquadri a schede create dal framework dispongono di un ID -1.
Per specificare le schede normali anziché le schede di tipo Outlook, passare lo stile AFX_CBRS_REGULAR_TABS al metodo CDockablePane::CreateEx .
Se si crea un riquadro a schede con schede rimovibili, il riquadro può essere eliminato definitivamente in modo automatico dal framework. Non è pertanto consigliabile archiviare il puntatore. Per passare un puntatore al riquadro a schede, chiamare il metodo CBasePane::GetParentTabbedPane
.
Esempi
In questo esempio viene creato un oggetto CTabbedPane
. Si userà quindi CBaseTabbedPane::AddTab per allegare altre schede.
CTabbedPane* pTabbededBar = new CTabbedPane (TRUE);
if (!pTabbededBar->Create (_T(""),
this,
CRect (0,
0,
200,
200),
TRUE,
(UINT) -1,
WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS |
WS_CLIPCHILDREN | CBRS_LEFT |
CBRS_FLOAT_MULTI))
{
TRACE0("Failed to create Solution Explorer bar\n");
return FALSE; // fail to create
}
pTabbededBar->AddTab (&m_wndClassView);
pTabbededBar->AddTab (&m_wndResourceView);
pTabbededBar->AddTab (&m_wndFileView);
pTabbededBar->EnableDocking(CBRS_ALIGN_ANY);
DockPane(pTabbededBar);
Un altro modo per creare un oggetto barra di controllo a schede consiste nell'usare CDockablePane::AttachToTabWnd. Il AttachToTabWnd
metodo crea dinamicamente un oggetto riquadro a schede usando le informazioni sulla classe di runtime impostate da CDockablePane::SetTabbedPaneRTC.
In questo esempio viene creato dinamicamente un riquadro a schede, vengono collegate due schede e la seconda scheda viene impostata come non rimovibile.
DockPane(&m_wndClassView);
CTabbedPane* pTabbedBar = NULL;
m_wndResourceView.AttachToTabWnd (&m_wndClassView,
DM_SHOW,
TRUE,
(CDockablePane**) &pTabbedBar);
m_wndFileView.AttachToTabWnd (pTabbedBar,
DM_SHOW,
TRUE,
(CDockablePane**) &pTabbedBar);
pTabbedBar->GetUnderlyingWindow ()->EnableTabDetach (1,
FALSE);
Gerarchia di ereditarietà
Requisiti
Intestazione: afxTabbedPane.h
CTabbedPane::D etachPane
virtual BOOL DetachPane(
CWnd* pBar,
BOOL bHide = FALSE);
Parametri
[in] pBar
[in] bHide
Valore restituito
Osservazioni:
CTabbedPane::EnableTabAutoColor
Abilita o disabilita la colorazione automatica delle schede.
static void EnableTabAutoColor(BOOL bEnable = TRUE);
Parametri
bEnable
[in] TRUE per abilitare la colorazione automatica delle schede; in caso contrario, FALSE.
Osservazioni:
Usare questo metodo statico per abilitare o disabilitare la colorazione automatica delle schede in tutti i riquadri a schede nell'applicazione. Quando questa funzionalità è abilitata, ogni scheda viene riempita con il proprio colore. È possibile trovare l'elenco dei colori utilizzati per colorare le schede chiamando il metodo CMFCBaseTabCtrl::GetAutoColors .
È possibile specificare l'elenco di colori che verranno usati per le schede chiamando CTabbedPane::SetTabAutoColors.
L'opzione è disabilitata per impostazione predefinita.
CTabbedPane::FloatTab
virtual BOOL FloatTab(
CWnd* pBar,
int nTabID,
AFX_DOCK_METHOD dockMethod,
BOOL bHide = FALSE);
Parametri
[in] pBar
[in] nTabID
[in] dockMethod
[in] bHide
Valore restituito
Osservazioni:
CTabbedPane::GetTabArea
Restituisce le dimensioni e la posizione dell'area della scheda nella finestra a schede.
virtual void GetTabArea(
CRect& rectTabAreaTop,
CRect& rectTabAreaBottom) const;
Parametri
rectTabAreaTop
[out] Contiene le dimensioni e la posizione, nelle coordinate dello schermo, dell'area della scheda superiore.
rectTabAreaBottom
[out] Contiene le dimensioni e la posizione, nelle coordinate dello schermo, dell'area della scheda inferiore.
Osservazioni:
Il framework chiama questo metodo per determinare come ancorare un riquadro che un utente sta trascinando. Quando l'utente trascina un riquadro sull'area della scheda del riquadro di destinazione, il framework tenta di aggiungerlo come nuova scheda del riquadro di destinazione. In caso contrario, tenta di ancorare il riquadro sul lato del riquadro di destinazione, che comporta la creazione di un nuovo contenitore di riquadri con un divisore di riquadri che separa i due riquadri.
Eseguire l'override di questo metodo in una CTabbedPane
classe derivata da per modificare questo comportamento.
CTabbedPane::GetTabWnd
CMFCTabCtrl* GetTabWnd() const;
Valore restituito
Osservazioni:
CTabbedPane::HasAutoHideMode
virtual BOOL HasAutoHideMode() const;
Valore restituito
Osservazioni:
CTabbedPane::IsTabLocationBottom
Determina se le schede si trovano nella parte inferiore della finestra.
virtual BOOL IsTabLocationBottom() const;
Valore restituito
TRUE se l'area della scheda si trova nella parte inferiore della finestra a schede; in caso contrario, FALSE.
Osservazioni:
CTabbedPane::m_bTabsAlwaysTop
Posizione predefinita delle schede nell'applicazione.
AFX_IMPORT_DATA static BOOL m_bTabsAlwaysTop;
Osservazioni:
Impostare questo membro statico su TRUE per forzare la visualizzazione di tutte le schede nell'applicazione nella parte superiore del riquadro a schede.
È necessario impostare questo valore prima che sia stato creato un riquadro a schede.
Il valore predefinito è FALSE.
CTabbedPane::m_pTabWndRTC
Informazioni sulla classe di runtime per un oggetto personalizzato derivato da CMFCTabCtrl
.
AFX_IMPORT_DATA static CRuntimeClass* m_pTabWndRTC;
Osservazioni:
Impostare questa variabile membro statica su un puntatore alle informazioni sulla classe di runtime di un CMFCTabCtrl
oggetto derivato da se si usa una finestra a schede personalizzata all'interno di un riquadro a schede.
CTabbedPane::ResetTabs
Reimposta lo stato predefinito di tutti i riquadri a schede.
static void ResetTabs();
Osservazioni:
Chiamare questo metodo per ripristinare lo stato predefinito di tutti i riquadri a schede. Quando viene chiamato, questo metodo reimposta le dimensioni del bordo e lo stato del colore automatico di tutti i riquadri a schede.
CTabbedPane::SetTabAutoColors
Imposta un elenco di colori personalizzati utilizzati quando la funzionalità colore automatico è abilitata.
static void SetTabAutoColors(const CArray<COLORREF, COLORREF>& arColors);
Parametri
arColors
[in] Contiene la matrice di colori da impostare.
Osservazioni:
Utilizzare questo metodo per personalizzare l'elenco dei colori utilizzati quando la funzionalità colore automatico è abilitata. Si tratta di una funzione statica e influisce su tutti i riquadri a schede nell'applicazione.
Usare CTabbedPane::EnableTabAutoColor per abilitare o disabilitare la funzionalità colore automatico.
Vedi anche
Grafico della gerarchia
Classi
Classe CDockablePane
Classe CBaseTabbedPane
Classe CMFCOutlookBar