Classe CBaseTabbedPane
Estende la funzionalità della CDockablePane Class per supportare la creazione di finestre a schede.
Sintassi
class CBaseTabbedPane : public CDockablePane
Membri
Costruttori pubblici
Nome | Descrizione |
---|---|
CBaseTabbedPane::CBaseTabbedPane |
Costruttore predefinito. |
Metodi pubblici
Nome | Descrizione |
---|---|
CBaseTabbedPane::AddTab | Aggiunge una nuova scheda a un riquadro a schede. |
CBaseTabbedPane::AllowDestroyEmptyTabbedPane | Specifica se un riquadro a schede vuoto può essere eliminato definitivamente. |
CBaseTabbedPane::ApplyRestoredTabInfo | Applica le impostazioni delle schede, caricate dal Registro di sistema, a un riquadro a schede. |
CBaseTabbedPane::CanFloat | Determina se il riquadro può essere mobile. (sostituzioni )CBasePane::CanFloat. |
CBaseTabbedPane::CanSetCaptionTextToTabName | Determina se la didascalia per il riquadro a schede deve visualizzare lo stesso testo della scheda attiva. |
CBaseTabbedPane::ConvertToTabbedDocument | (sostituzioni )CDockablePane::ConvertToTabbedDocument. |
CBaseTabbedPane::D etachPane | Converte uno o più riquadri ancorabili in documenti a schede MDI. |
CBaseTabbedPane::EnableSetCaptionTextToTabName | Abilita o disabilita la possibilità del riquadro a schede di sincronizzare il testo della didascalia con il testo dell'etichetta nella scheda attiva. |
CBaseTabbedPane::FillDefaultTabsOrderArray | Ripristina lo stato predefinito dell'ordine di tabulazioni interno. |
CBaseTabbedPane::FindBarByTabNumber | Restituisce un riquadro che si trova in una scheda quando la scheda è identificata da un indice di tabulazioni in base zero. |
CBaseTabbedPane::FindPaneByID | Restituisce un riquadro identificato dall'ID del riquadro. |
CBaseTabbedPane::FloatTab | Separa un riquadro, ma solo se il riquadro si trova in una scheda rimovibile. |
CBaseTabbedPane::GetDefaultTabsOrder | Restituisce l'ordine predefinito delle schede nel riquadro. |
CBaseTabbedPane::GetFirstVisibleTab | Recupera un puntatore alla prima scheda visualizzata. |
CBaseTabbedPane::GetMinSize | Recupera le dimensioni minime consentite per il riquadro. (sostituzioni )CPane::GetMinSize.) |
CBaseTabbedPane::GetPaneIcon | Restituisce un handle per l'icona del riquadro. (sostituzioni )CBasePane::GetPaneIcon. |
CBaseTabbedPane::GetPaneList | Restituisce un elenco di riquadri contenuti nel riquadro a schede. |
CBaseTabbedPane::GetTabArea | Restituisce i rettangoli di delimitazione per le aree di tabulazione superiore e inferiore. |
CBaseTabbedPane::GetTabsNum | Restituisce il numero di schede in una finestra di tabulazioni. |
CBaseTabbedPane::GetUnderlyingWindow | Ottiene la finestra della scheda sottostante (di cui è stato eseguito il wrapping). |
CBaseTabbedPane::GetVisibleTabsNum | Restituisce il conteggio delle schede visualizzate. |
CBaseTabbedPane::HasAutoHideMode | Determina se il riquadro a schede può essere impostato sulla modalità nascondi automaticamente. |
CBaseTabbedPane::IsHidesingleTab | Determina se il riquadro a schede è nascosto se viene visualizzata una sola scheda. |
CBaseTabbedPane::LoadSiblingPaneIDs |
Utilizzato internamente durante la serializzazione. |
CBaseTabbedPane::RecalcLayout | Ricalcola le informazioni sul layout per il riquadro. (sostituzioni )CPane::RecalcLayout. |
CBaseTabbedPane::RemovePane | Rimuove un riquadro dal riquadro a schede. |
CBaseTabbedPane::SaveSiblingBarIDs |
Utilizzato internamente durante la serializzazione. |
CBaseTabbedPane::Serialize |
(sostituzioni )CDockablePane::Serialize. |
CBaseTabbedPane::SerializeTabWindow |
Utilizzato internamente durante la serializzazione. |
CBaseTabbedPane::SetAutoDestroy | Determina se la barra di controllo a schede verrà eliminata automaticamente. |
CBaseTabbedPane::SetAutoHideMode | Attiva/disattiva il riquadro di ancoraggio tra la modalità di visualizzazione e nascondi automaticamente. (sostituzioni )CDockablePane::SetAutoHideMode. |
CBaseTabbedPane::ShowTab | Visualizza o nasconde una scheda. |
Osservazioni:
Questa classe è una classe astratta e non può essere creata un'istanza. Implementa i servizi comuni a tutti i tipi di riquadri a schede.
Attualmente, la libreria include due classi di riquadri a schede derivate: classe CTabbedPane e classe CMFCOutlookBar.
Un CBaseTabbedPane
oggetto esegue il wrapping di un puntatore a un oggetto Classe CMFCBaseTabCtrl. La classe CMFCBaseTabCtrl diventa quindi una finestra figlio del riquadro a schede.
Per altre informazioni su come creare riquadri a schede, vedere Classe CDockablePane, Classe CTabbedPane e classe CMFCOutlookBar.
Gerarchia di ereditarietà
CBaseTabbedPane
Requisiti
Intestazione: afxBaseTabbedPane.h
CBaseTabbedPane::AddTab
Aggiunge una nuova scheda a un riquadro a schede.
virtual BOOL AddTab(
CWnd* pNewBar,
BOOL bVisible = TRUE,
BOOL bSetActive = TRUE,
BOOL bDetachable = TRUE);
Parametri
pNewBar
[in, out] Puntatore al riquadro da aggiungere. Questo puntatore potrebbe non essere valido dopo aver chiamato questo metodo. Per altre informazioni, vedere la sezione Osservazioni.
bVisible
[in] TRUE per rendere visibile la scheda; in caso contrario, FALSE.
bSetActive
[in] TRUE per rendere attiva la scheda; in caso contrario, FALSE.
bDetachable
[in] TRUE per rendere la scheda scollegabile; in caso contrario, FALSE.
Valore restituito
TRUE se il riquadro è stato aggiunto correttamente come scheda e non è stato eliminato definitivamente nel processo. FALSE se il riquadro da aggiungere è un oggetto di tipo CBaseTabbedPane
. Per altre informazioni, vedere la sezione Osservazioni.
Osservazioni:
Chiamare questo metodo per aggiungere un riquadro come nuova scheda in un riquadro a schede. Se pNewBar punta a un oggetto di tipo CBaseTabbedPane
, tutte le relative schede vengono copiate nel riquadro a schede e quindi pNewBar viene eliminato definitivamente. Pertanto, pNewBar diventa un puntatore non valido e non deve essere usato.
CBaseTabbedPane::AllowDestroyEmptyTabbedPane
Specifica se un riquadro a schede vuoto può essere eliminato definitivamente.
virtual BOOL AllowDestroyEmptyTabbedPane() const;
Valore restituito
TRUE se un riquadro a schede vuoto può essere eliminato definitivamente; in caso contrario, FALSE. L'implementazione predefinita restituisce sempre TRUE.
Osservazioni:
Se non è consentito eliminare definitivamente un riquadro a schede vuoto, il framework nasconde invece il riquadro.
CBaseTabbedPane::ApplyRestoredTabInfo
Carica le impostazioni delle schede dal Registro di sistema e le applica a un riquadro a schede.
virtual void ApplyRestoredTabInfo(BOOL bUseTabIndexes = FALSE);
Parametri
bUseTabIndexes
[in] Questo parametro viene usato internamente dal framework.
Osservazioni:
Questo metodo viene chiamato dal framework quando ricarica le informazioni sullo stato di ancoraggio dal Registro di sistema. Il metodo ottiene informazioni sull'ordine di tabulazioni e i nomi di tabulazioni per un riquadro a schede.
CBaseTabbedPane::CanFloat
Specifica se il riquadro a schede può essere mobile.
virtual BOOL CanFloat() const;
Valore restituito
TRUE se il riquadro può galleggiare; in caso contrario, FALSE.
CBaseTabbedPane::CanSetCaptionTextToTabName
Determina se la didascalia per il riquadro a schede deve visualizzare lo stesso testo della scheda attiva.
virtual BOOL CanSetCaptionTextToTabName() const;
Valore restituito
TRUE se il testo della didascalia del riquadro a schede è impostato sul testo della scheda attiva; in caso contrario, FALSE.
Osservazioni:
Il metodo viene utilizzato per determinare se il testo visualizzato nella didascalia del riquadro a schede duplica l'etichetta della scheda attiva. È possibile abilitare o disabilitare questa funzionalità chiamando CBaseTabbedPane::EnableSetCaptionTextToTabName.
CBaseTabbedPane::ConvertToTabbedDocument
Converte uno o più riquadri ancorabili in documenti a schede MDI.
virtual void ConvertToTabbedDocument(BOOL bActiveTabOnly = TRUE);
Parametri
bActiveTabOnly
[in] Quando si converte un riquadro a schede, specificare TRUE per convertire solo la scheda attiva. Specificare FALSE per convertire tutte le schede nel riquadro.
CBaseTabbedPane::D etachPane
Scollega un riquadro dal riquadro a schede.
virtual BOOL DetachPane(
CWnd* pBar,
BOOL bHide = FALSE);
Parametri
pBar
[in] Puntatore al riquadro da scollegare.
bHide
[in] Parametro booleano che specifica se il framework nasconde il riquadro dopo che è stato scollegato.
Valore restituito
TRUE se il framework scollega correttamente il riquadro; FALSE se pBar è NULL o fa riferimento a un riquadro che non si trova nel riquadro a schede.
Osservazioni:
Il framework floats the detached pane if possible. Per altre informazioni, vedere CBasePane::CanFloat.
CBaseTabbedPane::EnableSetCaptionTextToTabName
Abilita o disabilita la possibilità del riquadro a schede di sincronizzare il testo della didascalia con il testo dell'etichetta nella scheda attiva.
virtual void EnableSetCaptionTextToTabName(BOOL bEnable);
Parametri
bEnable
[in] TRUE per sincronizzare la didascalia del riquadro a schede con la didascalia della scheda attiva; in caso contrario, FALSE.
CBaseTabbedPane::FillDefaultTabsOrderArray
Ripristina lo stato predefinito dell'ordine di tabulazioni interno.
void FillDefaultTabsOrderArray();
Osservazioni:
Questo metodo viene chiamato quando il framework ripristina uno stato iniziale di una barra di Outlook.
CBaseTabbedPane::FindPaneByID
Restituisce un riquadro identificato dall'ID del riquadro.
virtual CWnd* FindPaneByID(UINT uBarID);
Parametri
uBarID
[in] Specifica l'ID del riquadro da trovare.
Valore restituito
Puntatore al riquadro, se trovato; in caso contrario, NULL.
Osservazioni:
Questo metodo confronta tutte le schede nel riquadro e restituisce quella con l'ID specificato dal parametro uBarID .
CBaseTabbedPane::FindBarByTabNumber
Restituisce un riquadro che risiede in una scheda.
virtual CWnd* FindBarByTabNumber(
int nTabNum,
BOOL bGetWrappedBar = FALSE);
Parametri
nTabNum
[in] Specifica l'indice in base zero della scheda da recuperare.
bGetWrappedBar
[in] TRUE per restituire la finestra sottostante (incapsulata) del riquadro anziché il riquadro stesso; in caso contrario FALSE. Questo vale solo per i riquadri derivati da CDockablePaneAdapter.
Valore restituito
Se viene trovato il riquadro, viene restituito un puntatore valido al riquadro cercato; in caso contrario, NULL.
Osservazioni:
Chiamare questo metodo per recuperare il riquadro che si trova nella scheda specificata dal parametro nTabNum .
CBaseTabbedPane::FloatTab
Separa un riquadro, ma solo se il riquadro si trova in una scheda rimovibile.
virtual BOOL FloatTab(
CWnd* pBar,
int nTabID,
AFX_DOCK_METHOD dockMethod,
BOOL bHide = FALSE);
Parametri
pBar
[in, out] Puntatore al riquadro da spostare.
nTabID
[in] Specifica l'indice in base zero della scheda su float.
dockMethod
[in] Specifica il metodo da utilizzare per rendere il riquadro float. Per altre informazioni, vedere la sezione Osservazioni.
bHide
[in] TRUE per nascondere il riquadro prima di virgola mobile; in caso contrario, FALSE.
Valore restituito
TRUE se il riquadro è mobile; in caso contrario, FALSE.
Osservazioni:
Chiamare questo metodo per spostare un riquadro che attualmente si trova in una scheda scollegabile.
Se si vuole scollegare un riquadro a livello di codice, specificare DM_SHOW per il parametro dockMethod . Se si vuole spostare il riquadro nella stessa posizione in cui è stata spostata in precedenza, specificare DM_DBL_CLICK come parametro dockMethod .
CBaseTabbedPane::GetDefaultTabsOrder
Restituisce l'ordine predefinito delle schede nel riquadro.
const CArray<int,int>& GetDefaultTabsOrder();
Valore restituito
Oggetto CArray
che specifica l'ordine predefinito delle schede nel riquadro.
Osservazioni:
Il framework chiama questo metodo quando una barra di Outlook viene reimpostata su uno stato iniziale.
CBaseTabbedPane::GetFirstVisibleTab
Recupera un puntatore alla prima scheda visualizzata.
virtual CWnd* GetFirstVisibleTab(int& iTabNum);
Parametri
iTabNum
[in] Riferimento a un numero intero. Questo metodo scrive l'indice in base zero della prima scheda visualizzata in questo parametro oppure -1 se non viene trovata alcuna scheda visualizzata.
Valore restituito
In caso di esito positivo, un puntatore alla prima scheda visualizzata; in caso contrario, NULL.
CBaseTabbedPane::GetMinSize
Recupera le dimensioni minime consentite per il riquadro.
virtual void GetMinSize(CSize& size) const;
Parametri
size
[out] Oggetto CSize
riempito con la dimensione minima consentita.
Osservazioni:
Se la gestione coerente delle dimensioni minime dei riquadri è attiva ( CPane::m_bHandleMinSize), le dimensioni vengono riempite con le dimensioni minime consentite per la scheda attiva. In caso contrario, le dimensioni vengono riempite con il valore restituito CPane::GetMinSize.
CBaseTabbedPane::GetPaneIcon
Recupera le dimensioni minime consentite per il riquadro.
virtual void GetMinSize(CSize& size) const;
Parametri
size
[out] Oggetto CSize
riempito con la dimensione minima consentita.
Osservazioni:
Se la gestione coerente delle dimensioni minime dei riquadri è attiva ( CPane::m_bHandleMinSize), le dimensioni vengono riempite con le dimensioni minime consentite per la scheda attiva. In caso contrario, le dimensioni vengono riempite con il valore restituito CPane::GetMinSize.
CBaseTabbedPane::GetPaneList
Restituisce un elenco di riquadri contenuti nel riquadro a schede.
virtual void GetPaneList(
CObList& lst,
CRuntimeClass* pRTCFilter = NULL);
Parametri
Lst
[out] Oggetto CObList
riempito con i riquadri contenuti nel riquadro a schede.
pRTCFilter
[in] Se non è NULL, l'elenco restituito contiene solo riquadri della classe di runtime specificata.
CBaseTabbedPane::GetTabArea
Restituisce i rettangoli di delimitazione per le aree di tabulazione superiore e inferiore.
virtual void GetTabArea(
CRect& rectTabAreaTop,
CRect& rectTabAreaBottom) const = 0;
Parametri
rectTabAreaTop
[out] Riceve le coordinate dello schermo dell'area della scheda superiore.
rectTabAreaBottom
[out] Riceve le coordinate dello schermo dell'area della scheda inferiore.
Osservazioni:
Chiamare questo metodo per determinare i rettangoli di delimitazione, nelle coordinate dello schermo, per le aree di tabulazione superiore e inferiore.
CBaseTabbedPane::GetTabsNum
Restituisce il numero di schede in una finestra di tabulazioni.
virtual int GetTabsNum() const;
Valore restituito
Numero di schede nel riquadro a schede.
CBaseTabbedPane::GetUnderlyingWindow
Ottiene la finestra della scheda sottostante (di cui è stato eseguito il wrapping).
virtual CMFCBaseTabCtrl* GetUnderlyingWindow();
Valore restituito
Puntatore alla finestra della scheda sottostante.
CBaseTabbedPane::GetVisibleTabsNum
Restituisce il conteggio delle schede visibili.
virtual int GetVisibleTabsNum() const;
Valore restituito
Numero di schede visibili, che saranno maggiori o uguali a zero.
Osservazioni:
Chiamare questo metodo per determinare il numero di schede visibili nel riquadro a schede.
CBaseTabbedPane::HasAutoHideMode
Determina se il riquadro a schede può passare alla modalità Nascondi automaticamente.
virtual BOOL HasAutoHideMode() const;
Valore restituito
TRUE se il riquadro può essere impostato sulla modalità di individuazione automatica; in caso contrario, FALSE.
Osservazioni:
Se la modalità autohide è disabilitata, non viene visualizzato alcun pulsante di aggiunta nella didascalia del riquadro a schede.
CBaseTabbedPane::IsHidesingleTab
Determina se il riquadro a schede è nascosto se viene visualizzata una sola scheda.
virtual BOOL IsHideSingleTab() const;
Valore restituito
TRUE se la finestra della scheda non viene visualizzata quando è presente una sola scheda visibile; in caso contrario, FALSE.
Osservazioni:
Se il riquadro non viene visualizzato perché è aperta una sola scheda, è possibile chiamare questo metodo per determinare se il riquadro a schede funziona correttamente.
CBaseTabbedPane::RemovePane
Rimuove un riquadro dal riquadro a schede.
virtual BOOL RemovePane(CWnd* pBar);
Parametri
pBar
[in, out] Puntatore al riquadro da rimuovere dal riquadro a schede.
Valore restituito
TRUE se il riquadro è stato rimosso correttamente dal riquadro a schede e se il riquadro a schede è ancora valido. FALSE se l'ultimo riquadro è stato rimosso dal riquadro a schede e il riquadro a schede sta per essere eliminato definitivamente. Se il valore restituito è FALSE, non usare più il riquadro a schede.
Osservazioni:
Chiamare questo metodo per rimuovere il riquadro specificato dal parametro pBar dal riquadro a schede.
CBaseTabbedPane::SetAutoDestroy
Determina se la barra di controllo a schede verrà eliminata automaticamente.
void SetAutoDestroy(BOOL bAutoDestroy = TRUE);
Parametri
bAutoDestroy
[in] TRUE se il riquadro a schede è stato creato in modo dinamico e non si controlla la durata; in caso contrario, FALSE.
Osservazioni:
Impostare la modalità di eliminazione automatica su TRUE se si crea un riquadro a schede in modo dinamico e se non si controlla la durata. Se la modalità di eliminazione automatica è TRUE, il riquadro a schede verrà eliminato automaticamente dal framework.
CBaseTabbedPane::ShowTab
Visualizza o nasconde una scheda.
virtual BOOL ShowTab(
CWnd* pBar,
BOOL bShow,
BOOL bDelay,
BOOL bActivate);
Parametri
pBar
[in] Puntatore al riquadro da visualizzare o nascondere.
bShow
[in] TRUE per mostrare il riquadro; FALSE per nascondere il riquadro.
bDelay
[in] TRUE per ritardare la regolazione del layout della scheda; in caso contrario, FALSE.
bActivate
[in] TRUE per rendere attiva la scheda; in caso contrario, FALSE.
Valore restituito
TRUE se la scheda è stata visualizzata o nascosta correttamente; in caso contrario, FALSE.
Osservazioni:
Quando si chiama questo metodo, viene visualizzato o nascosto un riquadro, a seconda del valore del parametro bShow . Se si nasconde una scheda ed è l'ultima scheda visibile nella finestra della scheda sottostante, il riquadro a schede è nascosto. Se si visualizza una scheda quando in precedenza non erano visibili schede, viene visualizzato il riquadro a schede.
CBaseTabbedPane::RecalcLayout
Ricalcola le informazioni sul layout per il riquadro.
virtual void RecalcLayout();
Osservazioni:
Se il riquadro è mobile, questo metodo notifica al framework di ridimensionare il riquadro alle dimensioni correnti del mini-frame.
Se il riquadro è ancorato, questo metodo non esegue alcuna operazione.
CBaseTabbedPane::SetAutoHideMode
Imposta la modalità nascondi automaticamente per i riquadri scollegabili nel riquadro a schede.
virtual CMFCAutoHideToolBar* SetAutoHideMode(
BOOL bMode,
DWORD dwAlignment,
CMFCAutoHideToolBar* pCurrAutoHideBar = NULL,
BOOL bUseTimer = TRUE);
Parametri
bMode
[in] TRUE per abilitare la modalità nascondi automaticamente; FALSE per abilitare la normale modalità di ancoraggio.
dwAlignment
[in] Specifica l'allineamento del riquadro nascondi automaticamente da creare. Per un elenco dei valori possibili, vedere CPane::MoveByAlignment.
pCurrAutoHideBar
[in, out] Puntatore alla barra degli strumenti nascondi automaticamente corrente. Può essere NULL.
bUseTimer
[in] Specifica se utilizzare l'effetto nascondi automaticamente quando l'utente passa il riquadro alla modalità nascondi automaticamente o se nascondere immediatamente il riquadro.
Valore restituito
Puntatore alla barra degli strumenti nascondi automaticamente creata quando si passa alla modalità nascondi automaticamente o NULL se non viene creata alcuna barra degli strumenti.
Osservazioni:
Il framework chiama questo metodo quando un utente sceglie il pulsante per aggiungere il riquadro a schede alla modalità nascondi automaticamente o alla normale modalità di ancoraggio.
La modalità nascondi automaticamente è impostata per ogni riquadro scollegabile nel riquadro a schede. I riquadri non scollegabili vengono ignorati. Per altre informazioni, vedere CMFCBaseTabCtrl::EnableTabDetach.
Chiamare questo metodo per impostare un riquadro a schede sulla modalità nascondi automaticamente a livello di codice. Il riquadro deve essere ancorato alla finestra cornice principale ( CDockablePane::GetDefaultPaneDivider deve restituire un puntatore valido a CPaneDivider).