Klasa CTabView
Klasa CTabView
upraszcza korzystanie z klasy kontrolki tab ( CMFCTabCtrl) w aplikacjach korzystających z architektury dokumentu/widoku MFC.
Składnia
class CTabbedView : public CView
Elementy członkowskie
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
CTabView::AddView | Dodaje nowy widok do kontrolki karty. |
CTabView::FindTab | Zwraca indeks określonego widoku w kontrolce karty. |
CTabView::GetActiveView | Zwraca wskaźnik do aktualnie aktywnego widoku |
CTabView::GetTabControl | Zwraca odwołanie do kontrolki karty skojarzonej z widokiem. |
CTabView::RemoveView | Usuwa widok z kontrolki karty. |
CTabView::SetActiveView | Uaktywnia widok. |
Metody chronione
Nazwa/nazwisko | opis |
---|---|
CTabView::IsScrollBar | Wywoływana przez platformę podczas tworzenia widoku karty w celu określenia, czy widok karty ma udostępniony poziomy pasek przewijania. |
CTabView::OnActivateView | Wywoływana przez platformę, gdy widok karty jest aktywny lub nieaktywny. |
Uwagi
Ta klasa ułatwia umieszczenie widoku z kartami w aplikacji dokumentu/widoku. CTabView
jest klasą pochodną CView
zawierającą obiekt osadzony CMFCTabCtrl
. CTabView
obsługuje wszystkie komunikaty wymagane do obsługi CMFCTabCtrl
obiektu. Po prostu utwórz klasę z CTabView
klasy i podłącz ją do aplikacji, a następnie dodaj CView
klasy pochodne przy użyciu AddView
metody . Kontrolka karty wyświetli te widoki jako karty.
Możesz na przykład mieć dokument, który może być reprezentowany na różne sposoby: jako arkusz kalkulacyjny, wykres, formularz edytowalny itd. Możesz utworzyć poszczególne widoki rysunkowe dla danych zgodnie z potrzebami, wstawić je do CTabView
obiektu -pochodnego i mieć je na karcie bez dodatkowego kodowania.
Przykład elementu TabbedView: aplikacja widoku z kartami MFC ilustruje użycie elementu CTabView
.
Przykład
W poniższym przykładzie pokazano, jak CTabView
jest używany w przykładzie 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()
};
Wymagania
Nagłówek: afxTabView.h
CTabView::AddView
Dodaje widok do kontrolki karty.
int AddView(
CRuntimeClass* pViewClass,
const CString& strViewLabel,
int iIndex=-1,
CCreateContext* pContext=NULL);
Parametry
pViewClass
[in] Wskaźnik do klasy środowiska uruchomieniowego wstawionego widoku.
strViewLabel
[in] Określa tekst karty.
iIndex
[in] Określa położenie na podstawie zera, w którym ma być wstawiony widok. Jeśli pozycja to -1, nowa karta zostanie wstawiona na końcu.
pContext
[in] Wskaźnik do CCreateContext
widoku.
Wartość zwracana
Indeks widoku, jeśli ta metoda powiedzie się. W przeciwnym razie - 1.
Uwagi
Wywołaj tę funkcję, aby dodać widok do kontrolki karty osadzonej w ramce.
CTabView::FindTab
Zwraca indeks określonego widoku w kontrolce karty.
int FindTab(HWND hWndView) const;
Parametry
hWndView
[in] Uchwyt widoku.
Wartość zwracana
Indeks widoku, jeśli zostanie znaleziony; w przeciwnym razie, -1.
Uwagi
Wywołaj tę funkcję, aby pobrać indeks widoku, który ma określony uchwyt.
CTabView::GetActiveView
Zwraca wskaźnik do aktualnie aktywnego widoku.
CView* GetActiveView() const;
Wartość zwracana
Prawidłowy wskaźnik do aktywnego widoku lub wartość NULL, jeśli nie ma aktywnego widoku.
Uwagi
CTabView::GetTabControl
Zwraca odwołanie do kontrolki karty skojarzonej z widokiem.
DECLARE_DYNCREATE CMFCTabCtrl& GetTabControl();
Wartość zwracana
Odwołanie do kontrolki karty skojarzonej z widokiem.
CTabView::IsScrollBar
Wywoływana przez platformę podczas tworzenia widoku karty w celu określenia, czy widok karty ma udostępniony poziomy pasek przewijania.
virtual BOOL IsScrollBar() const;
Wartość zwracana
Wartość TRUE, jeśli widok karty powinien zostać utworzony razem z udostępnionym paskiem przewijania. W przeciwnym razie zwraca wartość FALSE.
Uwagi
Struktura wywołuje tę metodę podczas tworzenia obiektu CTabView .
Zastąp metodę IsScrollBar w klasie pochodnej CTabView i zwróć wartość TRUE, jeśli chcesz utworzyć widok, który ma udostępniony poziomy pasek przewijania.
CTabView::OnActivateView
Wywoływana przez platformę, gdy widok karty jest aktywny lub nieaktywny.
virtual void OnActivateView(CView* view);
Parametry
widok
[in] Wskaźnik do widoku.
Uwagi
Domyślna implementacja nic nie robi. Zastąp tę metodę w klasie -pochodnej CTabView
, aby przetworzyć to powiadomienie.
CTabView::RemoveView
Usuwa widok z kontrolki karty.
BOOL RemoveView(int iTabNum);
Parametry
iTabNum
[in] Indeks widoku do usunięcia.
Wartość zwracana
Indeks usuniętego widoku, jeśli ta metoda powiedzie się. W przeciwnym razie -1.
Uwagi
CTabView::SetActiveView
Uaktywnia widok.
BOOL SetActiveView(int iTabNum);
Parametry
iTabNum
[in] Indeks oparty na zera widoku karty.
Wartość zwracana
Wartość TRUE, jeśli określony widok został aktywny, wartość FALSE, jeśli indeks widoku jest nieprawidłowy.
Uwagi
Aby uzyskać więcej informacji, zobacz CMFCTabCtrl::SetActiveTab.