Aracılığıyla paylaş


Belgeler, görünümler ve çerçeve

Uyarı

Microsoft Foundation Sınıfları (MFC) kitaplığı desteklenmeye devam ediyor. Ancak artık özellik eklemeyeceğiz veya belgeleri güncelleştirmeyeceğiz.

MFC çerçevesinin merkezinde belge ve görünüm kavramları yer alır. Belge, kullanıcının düzenleme oturumunda etkileşimde bulunduğu bir veri nesnesidir. Dosya menüsündeki Yeni veya komutu tarafından oluşturulur ve genellikle bir dosyaya kaydedilir. (sınıfından CDocumenttüretilen standart MFC belgeleri, Etkin belgelerden ve OLE bileşik belgelerinden farklıdır.) Görünüm, kullanıcının bir belgeyle etkileşimde bulunduğu bir pencere nesnesidir.

Çalışan bir uygulamadaki anahtar nesneler şunlardır:

  • İş parçacığı nesneleri

    Uygulamanız arka planda hesaplamalar yapmak için ayrı yürütme iş parçacıkları oluşturuyorsa, CWinThread'den türetilen sınıfları kullanırsınız. CWinApp kendisinden türetilir CWinThread ve uygulamanızdaki birincil yürütme iş parçacığını (veya ana işlemi) temsil eder. MFC'yi ikincil iş parçacıklarında da kullanabilirsiniz.

  • Uygulama nesnesi

    Uygulama sınıfınız (öğesinden CWinApptüretilir) yukarıdaki tüm nesneleri denetler ve başlatma ve temizleme gibi uygulama davranışını belirtir. Uygulamanın tek ve tek uygulama nesnesi, uygulamanın desteklediği tüm belge türleri için belge şablonlarını oluşturur ve yönetir.

  • Belge şablonu veya şablonları

    Belge şablonu belgelerin, görünümlerin ve çerçeve pencerelerinin oluşturulmasını düzenler. sınıfından türetilen belirli bir belge şablonu sınıfı CDocTemplate, tek türde tüm açık belgeleri oluşturur ve yönetir. Birden fazla belge türünü destekleyen uygulamaların birden çok belge şablonu vardır. SDI uygulamaları için CSingleDocTemplate sınıfını veya MDI uygulamaları için sınıfını CMultiDocTemplate kullanın.

  • Çerçeve pencereleri

    Görünümler "belge çerçevesi pencereleri" içinde görüntülenir. SDI uygulamasında, belge çerçevesi penceresi aynı zamanda uygulamanın "ana çerçeve penceresidir". Bir MDI uygulamasında, belge pencereleri ana çerçeve penceresinde görüntülenen alt pencerelerdir. Türetilmiş ana çerçeve penceresi sınıfınız, görünümlerinizi içeren çerçeve pencerelerinin stillerini ve diğer özelliklerini belirtir. Çerçeve pencerelerini özelleştirmeniz gerekiyorsa, SDI uygulamaları için çerçeve penceresini özelleştirmek amacıyla CFrameWnd'den türetin. CMDIFrameWnd öğesinden türeyerek MDI uygulamaları için ana çerçeve penceresini özelleştirin. Ayrıca, uygulamanızın desteklediği her ayrı türde MDI belge çerçevesi pencerelerini özelleştirmek için öğesinden CMDIChildWnd bir sınıf türetin.

  • Belge veya belgeler.

    Belge sınıfınız (öğesinden CDocumenttüretilir) uygulamanızın verilerini belirtir.

    Uygulamanızda OLE işlevselliğini istiyorsanız, ihtiyacınız olan işlevselliğin türüne bağlı olarak belge sınıfınızı COleDocument veya türetilmiş sınıflarından birini türetin.

  • Görünüm veya görünümler.

    Görünüm sınıfınız (öğesinden CViewtüretilir), kullanıcının "veri üzerindeki penceresidir." Görünüm sınıfı, kullanıcının belgenizin verilerini nasıl göreceğini ve bununla nasıl etkileşime geçtiğini denetler. Bazı durumlarda, bir belgenin verilerin birden çok görünümü olmasını isteyebilirsiniz.

    CScrollView'den türetin kaydırmaya ihtiyacınız varsa. Görünümünüz bir dialog şablon kaynağında düzenlenmiş bir kullanıcı arabirimine sahipse CFormView türevin. Basit metin verileri için CEditView kullanın veya ondan türetin. Form tabanlı bir veri erişim uygulaması, örneğin bir veri girişi programı için, CRecordView (ODBC için) öğesinden türetin. Ayrıca CTreeView, CListView ve CRichEditView sınıfları da mevcuttur.

Çalışan bir uygulamada, bu nesneler komutlar ve diğer iletilere bağlı olarak kullanıcı eylemlerine işbirliğiyle yanıt verir. Tek bir uygulama nesnesi bir veya daha fazla belge şablonunu yönetir. Her belge şablonu bir veya daha fazla belge oluşturur ve yönetir (uygulamanın SDI veya MDI olmasına bağlı olarak). Kullanıcı, çerçeve penceresinin içindeki bir görünüm aracılığıyla belgeyi görüntüler ve işler. Aşağıdaki şekilde, bir SDI uygulaması için bu nesneler arasındaki ilişkiler gösterilmektedir.

Çalışan bir SDI uygulamasındaki nesnelerin diyagramı.
Çalışan SDI Uygulamasındaki Nesneler

Bu makale ailesinin geri kalanında çerçeve araçlarının, MFC Uygulama Sihirbazı'nın ve kaynak düzenleyicilerinin bu nesneleri nasıl oluşturduğu, birlikte nasıl çalıştıkları ve bunları programlamanızda nasıl kullandığınız açıklanmaktadır. Belgeler, görünümler ve çerçeve pencereleri , Pencere Nesneleri ve Belge/Görünüm Mimarisi bölümünde daha ayrıntılı olarak ele alınmalıdır.

Ayrıca bakınız

Windows için Uygulama Yazmak için Sınıfları Kullanma