Classe CTabView
La CTabView
classe semplifica l'uso della classe del controllo struttura a schede ( CMFCTabCtrl) nelle applicazioni che usano l'architettura di documento/visualizzazione di MFC.
Sintassi
class CTabbedView : public CView
Membri
Metodi pubblici
Nome | Descrizione |
---|---|
CTabView::AddView | Aggiunge una nuova visualizzazione al controllo struttura a schede. |
CTabView::FindTab | Restituisce l'indice della vista specificata nel controllo struttura a schede. |
CTabView::GetActiveView | Restituisce un puntatore alla visualizzazione attualmente attiva |
CTabView::GetTabControl | Restituisce un riferimento al controllo struttura a schede associato alla visualizzazione. |
CTabView::RemoveView | Rimuove la visualizzazione dal controllo Struttura a schede. |
CTabView::SetActiveView | Rende attiva una visualizzazione. |
Metodi protetti
Nome | Descrizione |
---|---|
CTabView::IsScrollBar | Chiamato dal framework durante la creazione di una visualizzazione struttura a schede per determinare se la visualizzazione struttura ha una barra di scorrimento orizzontale condivisa. |
CTabView::OnActivateView | Chiamato dal framework quando la visualizzazione struttura viene resa attiva o inattiva. |
Osservazioni:
Questa classe semplifica l'inserimento di una visualizzazione a schede in un'applicazione documento/visualizzazione. CTabView
è una CView
classe derivata da che contiene un oggetto incorporato CMFCTabCtrl
. CTabView
gestisce tutti i messaggi necessari per supportare l'oggetto CMFCTabCtrl
. È sufficiente derivare una classe da CTabView
e collegarla all'applicazione, quindi aggiungere CView
classi derivate da usando il AddView
metodo . Il controllo struttura a schede visualizzerà tali visualizzazioni come schede.
Ad esempio, si potrebbe avere un documento che può essere rappresentato in modi diversi: come foglio di calcolo, un grafico, un modulo modificabile e così via. È possibile creare visualizzazioni singole che disegnano i dati in base alle esigenze, inserirli nell'oggetto CTabView
derivato da e inserirli a schede senza scrivere codice aggiuntivo.
Esempio di TabbedView: Applicazione visualizzazione a schede MFC che illustra l'utilizzo di CTabView
.
Esempio
L'esempio seguente illustra come CTabView
viene usato nell'esempio TabbedView.
class CTabbedViewView : public CTabView
{
protected: // create from serialization only
CTabbedViewView();
DECLARE_DYNCREATE(CTabbedViewView)
// Attributes
public:
CTabbedViewDoc *GetDocument();
// Operations
public:
// Overrides
public:
virtual void OnDraw(CDC *pDC); // overridden to draw this view
virtual BOOL PreCreateWindow(CREATESTRUCT &cs);
protected:
virtual BOOL OnPreparePrinting(CPrintInfo *pInfo);
virtual void OnBeginPrinting(CDC *pDC, CPrintInfo *pInfo);
virtual void OnEndPrinting(CDC *pDC, CPrintInfo *pInfo);
BOOL IsScrollBar() const
{
return TRUE;
}
// Implementation
public:
virtual ~CTabbedViewView();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext &dc) const;
#endif
protected:
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
afx_msg BOOL OnEraseBkgnd(CDC *pDC);
afx_msg void OnContextMenu(CWnd *, CPoint point);
afx_msg void OnFilePrintPreview();
DECLARE_MESSAGE_MAP()
};
Requisiti
Intestazione: afxTabView.h
CTabView::AddView
Aggiunge una visualizzazione al controllo Struttura a schede.
int AddView(
CRuntimeClass* pViewClass,
const CString& strViewLabel,
int iIndex=-1,
CCreateContext* pContext=NULL);
Parametri
pViewClass
[in] Puntatore a una classe di runtime della visualizzazione inserita.
strViewLabel
[in] Specifica il testo della scheda.
iIndex
[in] Specifica la posizione in base zero in corrispondenza della quale inserire la vista. Se la posizione è -1, la nuova scheda viene inserita alla fine.
pContext
[in] Puntatore all'oggetto CCreateContext
della visualizzazione.
Valore restituito
Indice di visualizzazione se questo metodo ha esito positivo. In caso contrario, -1.
Osservazioni:
Chiamare questa funzione per aggiungere una visualizzazione al controllo struttura a schede incorporato in un frame.
CTabView::FindTab
Restituisce l'indice della vista specificata nel controllo struttura a schede.
int FindTab(HWND hWndView) const;
Parametri
hWndView
[in] Handle della visualizzazione.
Valore restituito
Indice della vista se viene trovato; in caso contrario, -1.
Osservazioni:
Chiamare questa funzione per recuperare l'indice di una vista con un handle specificato.
CTabView::GetActiveView
Restituisce un puntatore alla visualizzazione attualmente attiva.
CView* GetActiveView() const;
Valore restituito
Puntatore valido alla visualizzazione attiva o NULL se non è presente alcuna visualizzazione attiva.
Osservazioni:
CTabView::GetTabControl
Restituisce un riferimento al controllo struttura a schede associato alla visualizzazione.
DECLARE_DYNCREATE CMFCTabCtrl& GetTabControl();
Valore restituito
Riferimento al controllo struttura a schede associato alla visualizzazione.
CTabView::IsScrollBar
Chiamato dal framework durante la creazione di una visualizzazione struttura a schede per determinare se la visualizzazione struttura ha una barra di scorrimento orizzontale condivisa.
virtual BOOL IsScrollBar() const;
Valore restituito
TRUE se la visualizzazione struttura a schede deve essere creata insieme a una barra di scorrimento condivisa. In caso contrario, FALSE.
Osservazioni:
Il framework chiama questo metodo quando viene creato un oggetto CTabView .
Eseguire l'override del metodo IsScrollBar in una classe derivata da CTabView e restituire TRUE se si desidera creare una visualizzazione con una barra di scorrimento orizzontale condivisa.
CTabView::OnActivateView
Chiamato dal framework quando la visualizzazione struttura viene resa attiva o inattiva.
virtual void OnActivateView(CView* view);
Parametri
view
[in] Puntatore alla visualizzazione.
Osservazioni:
L'implementazione predefinita non esegue alcuna operazione. Eseguire l'override di questo metodo in una CTabView
classe derivata da per elaborare questa notifica.
CTabView::RemoveView
Rimuove la visualizzazione dal controllo Struttura a schede.
BOOL RemoveView(int iTabNum);
Parametri
iTabNum
[in] Indice della vista da rimuovere.
Valore restituito
Indice della vista rimossa se questo metodo ha esito positivo. In caso contrario -1.
Osservazioni:
CTabView::SetActiveView
Rende attiva una visualizzazione.
BOOL SetActiveView(int iTabNum);
Parametri
iTabNum
[in] Indice in base zero della visualizzazione struttura a schede.
Valore restituito
TRUE se la vista specificata è stata resa attiva, FALSE se l'indice della vista non è valido.
Osservazioni:
Per altre informazioni, vedere CMFCTabCtrl::SetActiveTab.