CTabView-Klasse
Die CTabView
Klasse vereinfacht die Verwendung der Registerkartensteuerelementklasse ( CMFCTabCtrl) in Anwendungen, die die Dokument-/Ansichtsarchitektur von MFC verwenden.
Syntax
class CTabbedView : public CView
Member
Öffentliche Methoden
Name | Beschreibung |
---|---|
CTabView::AddView | Fügt dem Registerkartensteuerelement eine neue Ansicht hinzu. |
CTabView::FindTab | Gibt den Index der angegebenen Ansicht im Registerkartensteuerelement zurück. |
CTabView::GetActiveView | Gibt einen Zeiger auf die aktuell aktive Ansicht zurück. |
CTabView::GetTabControl | Gibt einen Verweis auf das Registerkartensteuerelement zurück, das der Ansicht zugeordnet ist. |
CTabView::RemoveView | Entfernt die Ansicht aus dem Registerkartensteuerelement. |
CTabView::SetActiveView | Macht eine Ansicht aktiv. |
Geschützte Methoden
Name | Beschreibung |
---|---|
CTabView::IsScrollBar | Wird vom Framework aufgerufen, wenn sie eine Registerkartenansicht erstellen, um zu bestimmen, ob die Registerkartenansicht über eine freigegebene horizontale Bildlaufleiste verfügt. |
CTabView::OnActivateView | Wird vom Framework aufgerufen, wenn die Registerkartenansicht aktiv oder inaktiv wird. |
Hinweise
Diese Klasse erleichtert das Einfügen einer Ansicht mit Registerkarten in eine Dokument-/Ansichtsanwendung. CTabView
ist eine CView
abgeleitete Klasse, die ein eingebettetes CMFCTabCtrl
Objekt enthält. CTabView
behandelt alle Nachrichten, die erforderlich sind, um das CMFCTabCtrl
Objekt zu unterstützen. Leiten Sie einfach eine Klasse ab CTabView
und fügen Sie sie in Ihre Anwendung ein, und fügen Sie dann mithilfe der AddView
Methode abgeleitete Klassen hinzuCView
. Das Registerkartensteuerelement zeigt diese Ansichten als Registerkarten an.
Sie können z. B. ein Dokument haben, das auf unterschiedliche Weise dargestellt werden kann: als Kalkulationstabelle, als Diagramm, ein bearbeitbares Formular usw. Sie können einzelne Ansichten erstellen, die die Daten nach Bedarf zeichnen, sie in Ihr CTabView
abgeleitetes Objekt einfügen und ohne zusätzliche Codierung tabbed haben.
TabbedView-Beispiel: MFC Tabbed View Application veranschaulicht die Verwendung von CTabView
.
Beispiel
Das folgende Beispiel zeigt, wie CTabView
im TabbedView-Beispiel verwendet wird.
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()
};
Anforderungen
Header: afxTabView.h
CTabView::AddView
Fügt dem Registerkartensteuerelement eine Ansicht hinzu.
int AddView(
CRuntimeClass* pViewClass,
const CString& strViewLabel,
int iIndex=-1,
CCreateContext* pContext=NULL);
Parameter
pViewClass
[in] Ein Zeiger auf eine Laufzeitklasse der eingefügten Ansicht.
strViewLabel
[in] Gibt den Text der Registerkarte an.
iIndex
[in] Gibt die nullbasierte Position an, an der die Ansicht eingefügt werden soll. Wenn die Position -1 ist, wird die neue Registerkarte am Ende eingefügt.
pContext
[in] Ein Zeiger auf die CCreateContext
Ansicht.
Rückgabewert
Ein Ansichtsindex, wenn diese Methode erfolgreich ist. Andernfalls: -1
Hinweise
Rufen Sie diese Funktion auf, um dem Registerkartensteuerelement, das in einen Frame eingebettet ist, eine Ansicht hinzuzufügen.
CTabView::FindTab
Gibt den Index der angegebenen Ansicht im Registerkartensteuerelement zurück.
int FindTab(HWND hWndView) const;
Parameter
hWndView
[in] Der Ziehpunkt der Ansicht.
Rückgabewert
Der Index der Ansicht, wenn sie gefunden wird; andernfalls -1.
Hinweise
Rufen Sie diese Funktion auf, um den Index einer Ansicht abzurufen, die über einen angegebenen Handle verfügt.
CTabView::GetActiveView
Gibt einen Zeiger auf die aktuell aktive Ansicht zurück.
CView* GetActiveView() const;
Rückgabewert
Ein gültiger Zeiger auf die aktive Ansicht oder NULL, wenn keine aktive Ansicht vorhanden ist.
Hinweise
CTabView::GetTabControl
Gibt einen Verweis auf das Registerkartensteuerelement zurück, das der Ansicht zugeordnet ist.
DECLARE_DYNCREATE CMFCTabCtrl& GetTabControl();
Rückgabewert
Ein Verweis auf das Registerkartensteuerelement, das der Ansicht zugeordnet ist.
CTabView::IsScrollBar
Wird vom Framework aufgerufen, wenn sie eine Registerkartenansicht erstellen, um zu bestimmen, ob die Registerkartenansicht über eine freigegebene horizontale Bildlaufleiste verfügt.
virtual BOOL IsScrollBar() const;
Rückgabewert
TRUE, wenn die Registerkartenansicht zusammen mit einer freigegebenen Bildlaufleiste erstellt werden soll. Andernfalls FALSE.
Hinweise
Das Framework ruft diese Methode auf, wenn ein CTabView-Objekt erstellt wird.
Überschreiben Sie die IsScrollBar-Methode in einer von CTabView abgeleiteten Klasse und geben TRUE zurück, wenn Sie eine Ansicht mit einer freigegebenen horizontalen Bildlaufleiste erstellen möchten.
CTabView::OnActivateView
Wird vom Framework aufgerufen, wenn die Registerkartenansicht aktiv oder inaktiv wird.
virtual void OnActivateView(CView* view);
Parameter
view
[in] Ein Zeiger auf die Ansicht.
Hinweise
Bei der Standardimplementierung wird keine Aktion ausgeführt. Überschreiben Sie diese Methode in einer CTabView
abgeleiteten Klasse, um diese Benachrichtigung zu verarbeiten.
CTabView::RemoveView
Entfernt die Ansicht aus dem Registerkartensteuerelement.
BOOL RemoveView(int iTabNum);
Parameter
iTabNum
[in] Der Index der zu entfernenden Ansicht.
Rückgabewert
Der Index der entfernten Ansicht, wenn diese Methode erfolgreich ist. Andernfalls -1.
Hinweise
CTabView::SetActiveView
Macht eine Ansicht aktiv.
BOOL SetActiveView(int iTabNum);
Parameter
iTabNum
[in] Der nullbasierte Index der Registerkartenansicht.
Rückgabewert
TRUE, wenn die angegebene Ansicht aktiv wurde, FALSE, wenn der Index der Ansicht ungültig ist.
Hinweise
Weitere Informationen finden Sie unter CMFCTabCtrl::SetActiveTab.