Класс CTabView

Класс CTabView упрощает использование класса управления tab ( CMFCTabCtrl) в приложениях, использующих архитектуру документа или представления MFC.

Синтаксис

class CTabbedView : public CView

Участники

Открытые методы

Имя Описание
CTabView::AddView Добавляет новое представление в элемент управления tab.
CTabView::FindTab Возвращает индекс указанного представления в элементе управления табуляции.
CTabView::GetActiveView Возвращает указатель на текущее активное представление
CTabView::GetTabControl Возвращает ссылку на элемент управления tab, связанный с представлением.
CTabView::RemoveView Удаляет представление из элемента управления табуляции.
CTabView::SetActiveView Делает представление активным.

Защищенные методы

Имя Описание
CTabView::IsScrollBar Вызывается платформой при создании представления вкладок, чтобы определить, имеет ли представление вкладки общую горизонтальную полосу прокрутки.
CTabView::OnActivateView Вызывается платформой, когда представление вкладок активируется или неактивно.

Замечания

Этот класс позволяет легко поместить представление табуляции в приложение документа или представления. CTabView — это производный CViewкласс, содержащий внедренный CMFCTabCtrl объект. CTabView обрабатывает все сообщения, необходимые для поддержки CMFCTabCtrl объекта. Просто наследуйте класс и CTabView подключите его к приложению, а затем добавьте CViewпроизводные классы с помощью AddView метода. Элемент управления tab будет отображать эти представления как вкладки.

Например, у вас может быть документ, который можно представить разными способами: как электронная таблица, диаграмма, редактируемая форма и т. д. При необходимости можно создать отдельные представления, нарисовав данные, вставить их в CTabViewпроизводный объект и добавить их на вкладки без дополнительного кода.

Пример TabbedView: приложение представления с вкладками MFC иллюстрирует использование CTabView.

Пример

В следующем примере показано, как CTabView используется в примере 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()
};

Требования

Заголовок: afxTabView.h

CTabView::AddView

Добавляет представление в элемент управления tab.

int AddView(
    CRuntimeClass* pViewClass,
    const CString& strViewLabel,
    int iIndex=-1,
    CCreateContext* pContext=NULL);

Параметры

pViewClass
[in] Указатель на класс среды выполнения вставленного представления.

strViewLabel
[in] Задает текст вкладки.

iIndex
[in] Указывает отсчитываемую от нуля позицию, в которую необходимо вставить представление. Если положение равно -1, новая вкладка вставляется в конце.

pContext
[in] Указатель на CCreateContext представление.

Возвращаемое значение

Индекс представления, если этот метод выполнен успешно. В противном случае –1.

Замечания

Вызовите эту функцию, чтобы добавить представление в элемент управления tab, внедренный в кадр.

CTabView::FindTab

Возвращает индекс указанного представления в элементе управления табуляции.

int FindTab(HWND hWndView) const;

Параметры

hWndView
[in] Дескриптор представления.

Возвращаемое значение

Индекс представления, если он найден; в противном случае — значение -1.

Замечания

Вызовите эту функцию, чтобы получить индекс представления с указанным дескриптором.

CTabView::GetActiveView

Возвращает указатель на текущее активное представление.

CView* GetActiveView() const;

Возвращаемое значение

Допустимый указатель на активное представление или NULL, если активного представления нет.

Замечания

CTabView::GetTabControl

Возвращает ссылку на элемент управления tab, связанный с представлением.

DECLARE_DYNCREATE CMFCTabCtrl& GetTabControl();

Возвращаемое значение

Ссылка на элемент управления вкладки, связанный с представлением.

CTabView::IsScrollBar

Вызывается платформой при создании представления вкладок, чтобы определить, имеет ли представление вкладки общую горизонтальную полосу прокрутки.

virtual BOOL IsScrollBar() const;

Возвращаемое значение

Значение TRUE, если представление вкладки должно быть создано вместе с общей полосой прокрутки. В противном случае — значение FALSE.

Замечания

Платформа вызывает этот метод при создании объекта CTabView .

Переопределите метод IsScrollBar в классе, производном от CTabView, и верните значение TRUE, если вы хотите создать представление с общей горизонтальной полосой прокрутки.

CTabView::OnActivateView

Вызывается платформой, когда представление вкладок активируется или неактивно.

virtual void OnActivateView(CView* view);

Параметры

view
[in] Указатель на представление.

Замечания

Реализация по умолчанию не выполняет никаких действий. Переопределите этот метод в производном CTabViewклассе для обработки этого уведомления.

CTabView::RemoveView

Удаляет представление из элемента управления табуляции.

BOOL RemoveView(int iTabNum);

Параметры

iTabNum
[in] Индекс удаляемого представления.

Возвращаемое значение

Индекс удаленного представления, если этот метод выполнен успешно. В противном случае - 1.

Замечания

CTabView::SetActiveView

Делает представление активным.

BOOL SetActiveView(int iTabNum);

Параметры

iTabNum
[in] Отсчитываемый от нуля индекс представления вкладок.

Возвращаемое значение

Значение TRUE, если указанное представление было активно, значение FALSE, если индекс представления недопустим.

Замечания

Дополнительные сведения см. в разделе CMFCTabCtrl::SetActiveTab.

См. также

Диаграмма иерархии
Классы
CMFCTabCtrl
Класс CView