CTabView Sınıfı
sınıfı, CTabView
MFC'nin belge/görünüm mimarisini kullanan uygulamalarda sekme denetim sınıfının ( CMFCTabCtrl) kullanımını basitleştirir.
Sözdizimi
class CTabbedView : public CView
Üyeler
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CTabView::AddView | Sekme denetimine yeni bir görünüm ekler. |
CTabView::FindTab | Sekme denetiminde belirtilen görünümün dizinini döndürür. |
CTabView::GetActiveView | Geçerli etkin görünümün işaretçisini döndürür |
CTabView::GetTabControl | Görünümle ilişkili sekme denetimine bir başvuru döndürür. |
CTabView::RemoveView | Görünümü sekme denetiminden kaldırır. |
CTabView::SetActiveView | Görünümü etkin hale getirir. |
Korumalı Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CTabView::IsScrollBar | Sekme görünümünün paylaşılan bir yatay kaydırma çubuğu olup olmadığını belirlemek için bir sekme görünümü oluştururken çerçeve tarafından çağrılır. |
CTabView::OnActivateView | Sekme görünümü etkin veya etkin olmadığında çerçeve tarafından çağrılır. |
Açıklamalar
Bu sınıf, bir belge/görünüm uygulamasına sekmeli görünüm yerleştirmeyi kolaylaştırır. CTabView
, katıştırılmış CMFCTabCtrl
bir CView
nesne içeren türetilmiş bir sınıftır. CTabView
nesnesini desteklemek CMFCTabCtrl
için gereken tüm iletileri işler. Yalnızca öğesinden CTabView
bir sınıf türetip uygulamanıza takın, ardından yöntemini kullanarak AddView
türetilmiş sınıflar ekleyinCView
. Sekme denetimi bu görünümleri sekme olarak görüntüler.
Örneğin, farklı şekillerde temsil edilebilen bir belgeniz olabilir: elektronik tablo, grafik, düzenlenebilir form vb. Verileri gerektiği gibi çizen tek tek görünümler oluşturabilir, bunları türetilmiş nesnenize CTabView
ekleyebilir ve ek kodlama yapmadan sekmeli olmalarını sağlayabilirsiniz.
TabbedView Örneği: MFC Sekmeli Görünüm Uygulaması kullanımını CTabView
gösterir.
Örnek
Aşağıdaki örnekte TabbedView örneğinde nasıl CTabView
kullanıldığı gösterilmektedir.
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()
};
Gereksinimler
Üst bilgi: afxTabView.h
CTabView::AddView
Sekme denetimine bir görünüm ekler.
int AddView(
CRuntimeClass* pViewClass,
const CString& strViewLabel,
int iIndex=-1,
CCreateContext* pContext=NULL);
Parametreler
pViewClass
[in] Eklenen görünümün çalışma zamanı sınıfına işaretçi.
strViewLabel
[in] Sekmenin metnini belirtir.
iIndex
[in] Görünümün eklendiği sıfır tabanlı konumu belirtir. Konum -1 ise, sona yeni sekme eklenir.
pContext
[in] Görünümün CCreateContext
işaretçisi.
Dönüş Değeri
Bu yöntem başarılı olursa bir görünüm dizini. Aksi takdirde, -1.
Açıklamalar
Bir çerçeveye eklenmiş sekme denetimine görünüm eklemek için bu işlevi çağırın.
CTabView::FindTab
Sekme denetiminde belirtilen görünümün dizinini döndürür.
int FindTab(HWND hWndView) const;
Parametreler
hWndView
[in] Görünümün tutamacı.
Dönüş Değeri
Bulunursa görünümün dizini; aksi takdirde, -1.
Açıklamalar
Belirtilen tanıtıcıya sahip bir görünümün dizinini almak için bu işlevi çağırın.
CTabView::GetActiveView
Geçerli etkin görünümün işaretçisini döndürür.
CView* GetActiveView() const;
Dönüş Değeri
Etkin görünüm için geçerli bir işaretçi veya etkin görünüm yoksa NULL.
Açıklamalar
CTabView::GetTabControl
Görünümle ilişkili sekme denetimine bir başvuru döndürür.
DECLARE_DYNCREATE CMFCTabCtrl& GetTabControl();
Dönüş Değeri
Görünümle ilişkilendirilmiş sekme denetimine başvuru.
CTabView::IsScrollBar
Sekme görünümünün paylaşılan bir yatay kaydırma çubuğu olup olmadığını belirlemek için bir sekme görünümü oluştururken çerçeve tarafından çağrılır.
virtual BOOL IsScrollBar() const;
Dönüş Değeri
Sekme görünümünün paylaşılan bir kaydırma çubuğuyla birlikte oluşturulması gerekiyorsa TRUE. Aksi takdirde YANLIŞ.
Açıklamalar
Çerçeve, bir CTabView nesnesi oluşturulduğunda bu yöntemi çağırır.
CTabView türetilmiş bir sınıfta IsScrollBar yöntemini geçersiz kılın ve paylaşılan yatay kaydırma çubuğuna sahip bir görünüm oluşturmak istiyorsanız TRUE değerini döndürebilirsiniz.
CTabView::OnActivateView
Sekme görünümü etkin veya etkin olmadığında çerçeve tarafından çağrılır.
virtual void OnActivateView(CView* view);
Parametreler
görünüm
[in] Görünümün işaretçisi.
Açıklamalar
Varsayılan uygulama hiçbir şey yapmaz. Bu bildirimi işlemek için türetilmiş bir CTabView
sınıfta bu yöntemi geçersiz kılın.
CTabView::RemoveView
Görünümü sekme denetiminden kaldırır.
BOOL RemoveView(int iTabNum);
Parametreler
iTabNum
[in] Kaldırılacak görünümün dizini.
Dönüş Değeri
Bu yöntem başarılı olursa kaldırılan görünümün dizini. Aksi takdirde -1.
Açıklamalar
CTabView::SetActiveView
Görünümü etkin hale getirir.
BOOL SetActiveView(int iTabNum);
Parametreler
iTabNum
[in] Sekme görünümünün sıfır tabanlı dizini.
Dönüş Değeri
Belirtilen görünüm etkin hale getirildiyse TRUE, görünümün dizini geçersizse YANLIŞ.
Açıklamalar
Daha fazla bilgi için bkz. CMFCTabCtrl::SetActiveTab.