Pochodne klasy okien

Można również tworzyć okna bezpośrednio z CWnd, lub uzyskać nowe klasy okna z CWnd.To w taki sposób zwykle tworzysz własne niestandardowe okna.Jednak większość okien używanych w ramach programu jest tworzonych w zamian na podstawie jednej z klas okien programu pochodzącego z CWnd, dostarczonych przez MFC

Klasy okna ramowego

  • CFrameWnd
    Używane dla SDI ramki okna, którego tworzy jednolity dokumentu i jej widok.Okno ramki jest zarówno głównym oknem aplikacji jaki i oknem ramki dla bieżącego dokumentu.

  • CMDIFrameWnd
    Wykorzystywany jako główne okno ramki dla aplikacji MDI.Okno głównych ramek jest kontenerem dla wszystkich okien dokumentu MDI i udostępnia im swój pasek menu.Okno ramki MDI jest oknem najwyższego poziomu, które pojawia się na pulpicie.

  • CMDIChildWnd
    Używane dla poszczególnych dokumentów utworzonych w oknie głównym ramki MDI.Każdy dokument i jego widok jest otoczony oknem ramki podrzędnego MDI zawartych w ramce głównej okna MDI.Okno podrzędne MDI wygląda tak, jak okno typowej ramki, ale znajduje się wewnątrz okna ramki MDI zamiast „siedzieć” na pulpicie.Jednak okno podrzędne MDI nie posiada własnego paska menu i musi dzielić pasek menu z oknem ramki aplikacji MDI, która go posiada.

    Aby uzyskać więcej informacji, zobacz Okno ramowe.

Inne klasy okna pochodzące od CWnd

Oprócz ramki okien, kilka innych kategorii głównych okien jest uzyskiwanych z CWnd:

  • Widoki
    Widoki są tworzone za pomocą CWnd-klasy pochodnej CView (lub jednej z jej klas pochodnych).Widok jest dołączony do dokumentu i działa jako pośrednik między dokumentem i użytkownikiem.Widok jest oknem podrzędnym (nie podrzędnym MDI), które zwykle wypełnia obszar kliencki ramki okna SDI lub ramki okna podrzędnego MDI (lub część obszaru klienckiego nie objętego paskiem narzędzi/lub paskiem stanu).

  • Okna dialogowe
    Okna dialogowe są tworzone przy użyciu pochodzącej z CWnd klasy CDialog.

  • Formularze
    Widoki formularzy oparte na zasobach szablonów dialogowych, takich jak okna dialogowe, są tworzone przy użyciu klas CFormView, CRecordView lub CDaoRecordView.

  • Formanty
    Formanty, takie jak przyciski, pola listy i pola kombi są tworzone przy użyciu innych klas pochodzących z CWnd.Zobacz Tematy kontroli.

  • Paski sterowania
    Okna podrzędne, które zawierają formanty.Przykłady obejmują paski narzędzi i stanu.Zobacz Paski controli.

Hierarchia klas okna

Odnieś się do hierarchii MFC w odwołaniu MFC.Widoki są wyjaśnione w Dokument/Architektura widoku.Okna dialogowe są wyjaśnione w części Okna dialogowe.

Tworzenie własnych klas okien specjalnego przeznaczenia

Oprócz klas okien, dostarczonych przez bibliotekę klas, możesz potrzebować podrzędnego okna specjalnego przeznaczenia.Aby utworzyć takie okno, stwórz swoją własną CWnd klasę pochodną i zrób z niej podrzędne ono ramki lub widoku.Należy pamiętać, że szablon zarządza zakresem obszaru klienckiego okna ramki dokumentu.Większość obszaru klienta jest zarządzana przez widok, ale inne okna, takie jak kontrola pasków lub własne niestandardowe okna mogą dzielić przestrzeń z widoku.Może być konieczne do interakcji z mechanizmami w klasach CView i CControlBar do pozycjonowania okien podrzędnych w oknie ramki obszaru klienta.

Tworzenie okien omawia tworzenie obiektów okien oraz okien, którymi zarządzają.

Zobacz też

Koncepcje

Obiekty okien