Aracılığıyla paylaş


Belge/görünüm mimarisi alternatifleri

mfc uygulamaları, belge/görünüm mimarisi normalde bilgileri, dosya formatları ve kullanıcıların verileri görsel bir temsilini yönetmek için kullanın.Masaüstü uygulamaları çoğunluğu için uygun ve verimli uygulama mimarisi belge/view mimarisidir.Bu mimari veri görüntüleme gelen ve çoğu zaman ayıran, uygulamanızı kolaylaştırır ve artıklı kod azaltır.

Ancak, belge/görünüm mimarisi bazı durumlar için uygun değildir.Bu örnekleri göz önünde bulundurun:

  • c Windows için yazılmış bir uygulama bağlantı noktası oluşturma bağlantı noktanız belge/görünümü destek uygulamanıza eklemeden önce tamamlamak isteyebilirsiniz.

  • Basit bir yardımcı program yazıyorsanız, belge/görünüm mimarisi yapabilirsiniz bulabilirsiniz.

  • Özgün kod veri yönetimi veri zaten karıştırırsa, iki ayrı gerekir çünkü görüntüleme, hareketli kodu belge/görünüm Model değer değil.Kod olarak bırakmayı tercih edebilirsiniz.

Belge/görünüm mimarisi kullanmayan bir uygulama oluşturmak için temizleyin Belge/görünüm mimarisi desteği onay kutusunu mfc Application Sihirbazın Adım 1.Bakın mfc uygulaması Sihirbazı Ayrıntılar için.

[!NOT]

İletişim tabanlı uygulamalar mfc uygulaması Sihirbazı tarafından oluşturulan Belge/görünüm mimarisi kullanmayın nedenle Belge/görünüm mimarisi desteği iletişim uygulama türü seçerseniz, onay kutusu devre.

Herhangi bir başka sihirbaz tarafından oluşturulan uygulama gibi kaynak ve iletişim Düzenleyicileri yanı sıra Visual C++ sihirbazlar ile oluşturulan uygulama çalışır.Uygulama, araç çubukları, kaydırma çubukları ve durum çubuğu desteği ve sahip bir hakkında kutusu.Uygulamanızın herhangi bir belge şablonları kaydetmez ve belge sınıfı içermez.

Not uygulamanız oluşturulan bir görünüm sınıfı olan CChildView, dan türetilmiş CWnd.mfc oluşturur ve uygulamanız tarafından oluşturulan çerçeve windows içinde görünüm sınıfının bir örneğini yerleştirir.Konumlandırma ve uygulamanın içerik yönetimi kolaylaştırır, çünkü bir görünüm penceresini kullanarak mfc hala zorlar.Boyama koda ekleyebileceðiniz OnPaint bu sınıfın bir üyesi.Kodunuzu çerçeve yerine görünümü kaydırma çubuklarını eklemelisiniz.

mfc tarafından sağlanan belge/görünüm mimarisi bir uygulamanın temel özelliklerinin çoğu uygulanmasından sorumlu olduğu için projenizde, devamsızlık uygulamanızın önemli özellikler uygulanmasından sorumlu olduðu anlamýna gelir:

  • mfc uygulaması sihirbazının sağladığı gibi yalnızca uygulamanız için menü içeren New ve Exit üzerindeki komutları Dosya menü.( New Komutu yalnızca MDI uygulamaları desteklenen, SDI uygulamalarının belge/View olmadan değil destek.) mru (en son kullanılan) listesi menü oluşturulan kaynak desteklemez.

  • İşleyicisi işlevleri ve uygulamalar dahil olmak üzere uygulamanızın destekleyeceği komutları için ekleme açık ve kaydetmek , Dosya menü.mfc normalde bu özellikleri desteklemek için kod destek belge/görünüm mimarisi sıkı bağlıdır ancak sağlar.

  • İstenirse, araç, uygulamanız için en az olacaktır.

Sihirbaz doğru mfc mimarisi sağladığı için mfc uygulaması Sihirbazı olmadan belge/view mimari uygulamalar oluşturmak için kullanmanız önerilir.Ancak, sihirbaz kullanarak kaçınmalısınız, kodunuzda belge/görünüm mimarisi atlayarak için çeşitli yaklaşımlar şunlardır:

  • Belge kullanılmayan bir appendage görmesini ve Görünüm sınıfındaki Yukarıda önerilen veri yönetimi kodunuzu uygulamak.Belge yükü oldukça düşüktür.Tek bir CDocument nesne çeker yükünü tek başına artı küçük yükü az miktarda CDocument's temel sınıflar, CCmdTarget ve CObject.Hem de ikinci sınıfları küçüktür.

    İçinde bildirilen CDocument:

    • İki CString nesneler.

    • Üç bools.

    • Bir CDocTemplate işaretçisi.

    • Bir CPtrList belgenin görünümler listesini içeren nesne.

    Ayrıca, belgenin belge nesnesi, görüntüleme nesnelerine, çerçeve penceresi ve belge şablonu nesnesi oluşturmak için süre gerektirir.

  • Belge ve Görünüm kullanılmayan appendages kabul eder.Veri Yönetimi ve çizim kod çerçeve penceresi görünümü yerine koyun.Bu yaklaşım, dil c programlama modeli daha yakın.

  • Belge ve tüm oluşturma ortadan kaldırmak için görünüm oluşturma mfc çerçevesi parçalarını geçersiz kılar.Çağrı belgesi oluşturma işlemi başlar CWinApp::AddDocTemplate.Bu uygulama sınıfının çağrısından ortadan InitInstance üye işlev ve çerçeve penceresinde oluşturun InitInstance kendinizi.Veri Yönetimi kodunuzda kare pencere sınıfı içinde yerleştirin.Belge/görünümü oluşturma işlemi gösterilmektedir Belge/görünümü oluşturma.Daha fazla çalışma ve framework daha derin bir anlayış gerektirir, ancak belge/view yükü tamamen boşaltır.

Makale mfc: veritabanı sınıflarını olmadan belgeleri ve görünümleri veritabanı uygulamaları bağlamında daha somut örnekleri belge/görünüm seçenekleri sunar.

Ayrıca bkz.

Kavramlar

Belge/mimari görünümü